Mechanical Trading StrategyThe "Mechanical Trading Strategy" is a simple and systematic approach to trading that aims to capture short-term price movements in the financial markets. This strategy focuses on executing trades based on specific conditions and predetermined profit targets and stop loss levels.
Key Features:
Profit Target: The strategy allows you to set a profit target as a percentage of the entry price. This target represents the desired level of profit for each trade.
Stop Loss: The strategy incorporates a stop loss level as a percentage of the entry price. This level represents the maximum acceptable loss for each trade, helping to manage risk.
Entry Condition: The strategy triggers trades at a specific time. In this case, the condition for entering a trade is based on the hour of the candle being 16 (4:00 PM). This time-based entry condition provides a systematic approach to executing trades.
Position Sizing: The strategy determines the position size based on a fixed percentage of the available equity. This approach ensures consistent risk management and allows for potential portfolio diversification.
Execution:
When the entry condition is met, signified by the hour being 16, the strategy initiates a long position using the strategy.entry function. It sets the exit conditions using the strategy.exit function, with a limit order for the take profit level and a stop order for the stop loss level.
Take Profit and Stop Loss:
The take profit level is calculated by adding a percentage of the entry price to the entry price itself. This represents the profit target for the trade. Conversely, the stop loss level is calculated by subtracting a percentage of the entry price from the entry price. This level represents the maximum acceptable loss for the trade.
By using this mechanical trading strategy, traders can establish a disciplined and systematic approach to their trading decisions. The predefined profit target and stop loss levels provide clear exit rules, helping to manage risk and potentially maximize returns. However, it is important to note that no trading strategy is guaranteed to be profitable, and careful analysis and monitoring of market conditions are always recommended.
Cari dalam skrip untuk "stop loss"
[MT] Strategy Backtest Template| Initial Release | | EN |
An update of my old script, this script is designed so that it can be used as a template for all those traders who want to save time when programming their strategy and backtesting it, having functions already programmed that in normal development would take you more time to program, with this template you can simply add your favorite indicator and thus be able to take advantage of all the functions that this template has.
🔴Stop Loss and 🟢Take Profit:
No need to mention that it is a Stop Loss and a Take Profit, within these functions we find the options of: fixed percentage (%), fixed price ($), ATR, especially for Stop Loss we find the Pivot Points, in addition to this, the price range between the entry and the Stop Loss can be converted into a trailing stop loss, instead, especially for the Take Profit we have an option to choose a 1:X ratio that complements very well with the Pivot Points.
📈Heikin Ashi Based Entries:
Heikin Ashi entries are trades that are calculated based on Heikin Ashi candles but their price is executed to Japanese candles, thus avoiding false results that occur in Heikin candlestick charts, this making in certain cases better results in strategies that are executed with this option compared to Japanese candlesticks.
📊Dashboard:
A more visual and organized way to see the results and necessary data produced by our strategy, among them we can see the dates between which our operations are made regardless if you have activated some time filter, usual data such as Profit, Win Rate, Profit factor are also displayed in this panel, additionally data such as the total number of operations, how many were gains and how many losses, the average profit and loss for each operation and finally the maximum profits and losses followed, which are data that will be very useful to us when we elaborate our strategies.
Feel free to use this template to program your own strategies, if you find errors or want to request a new feature let me know in the comments or through my social networks found in my tradingview profile.
| Update 1.1 | | EN |
➕Additions: '
Time sessions filter and days of the week filter added to the time filter section.
Option to add leverage to the strategy.
5 Moving Averages, RSI, Stochastic RSI, ADX, and Parabolic Sar have been added as indicators for the strategy.
You can choose from the 6 available indicators the way to trade, entry alert or entry filter.
Added the option of ATR for Take Profit.
Ticker information and timeframe are now displayed on the dashboard.
Added display customization and color customization of indicator plots.
Added customization of display and color plots of trades displayed on chart.
📝Changes:
Now when activating the time filter it is optional to add a start or end date and time, being able to only add a start date or only an end date.
Operation plots have been changed from plot() to line creation with line.new().
Indicator plots can now be controlled from the "plots" section.
Acceptable and deniable range of profit, winrate and profit factor can now be chosen from the "plots" section to be displayed on the dashboard.
Aesthetic changes in the section separations within the settings section and within the code itself.
The function that made the indicators give inputs based on heikin ashi candles has been changed, see the code for more information.
⚙️Fixes:
Dashboard label now projects correctly on all timeframes including custom timeframes.
Removed unnecessary lines and variables to take up less code space.
All code in general has been optimized to avoid the use of variables, unnecessary lines and avoid unnecessary calculations, freeing up space to declare more variables and be able to use fewer lines of code.
| Lanzamiento Inicial | | ES |
Una actualización de mi antiguo script, este script está diseñado para que pueda ser usado como una plantilla para todos aquellos traders que quieran ahorrar tiempo al programar su estrategia y hacer un backtesting de ella, teniendo funciones ya programadas que en el desarrollo normal te tomaría más tiempo programar, con esta plantilla puedes simplemente agregar tu indicador favorito y así poder aprovechar todas las funciones que tiene esta plantilla.
🔴Stop Loss y 🟢Take Profit:
No hace falta mencionar que es un Stop Loss y un Take Profit, dentro de estas funciones encontramos las opciones de: porcentaje fijo (%), precio fijo ($), ATR, en especial para Stop Loss encontramos los Pivot Points, adicionalmente a esto, el rango de precio entre la entrada y el Stop Loss se puede convertir en un trailing stop loss, en cambio, especialmente para el Take Profit tenemos una opción para elegir un ratio 1:X que se complementa muy bien con los Pivot Points.
📈Entradas Basadas en Heikin Ashi:
Las entradas Heikin Ashi son operaciones que son calculados en base a las velas Heikin Ashi pero su precio esta ejecutado a velas japonesas, evitando así́ los falsos resultados que se producen en graficas de velas Heikin, esto haciendo que en ciertos casos se obtengan mejores resultados en las estrategias que son ejecutadas con esta opción en comparación con las velas japonesas.
📊Panel de Control:
Una manera más visual y organizada de ver los resultados y datos necesarios producidos por nuestra estrategia, entre ellos podemos ver las fechas entre las que se hacen nuestras operaciones independientemente si se tiene activado algún filtro de tiempo, datos usuales como el Profit, Win Rate, Profit factor también son mostrados en este panel, adicionalmente se agregaron datos como el número total de operaciones, cuantos fueron ganancias y cuantos perdidas, el promedio de ganancias y pérdidas por cada operación y por ultimo las máximas ganancias y pérdidas seguidas, que son datos que nos serán muy útiles al elaborar nuestras estrategias.
Siéntete libre de usar esta plantilla para programar tus propias estrategias, si encuentras errores o quieres solicitar una nueva función házmelo saber en los comentarios o a través de mis redes sociales que se encuentran en mi perfil de tradingview.
| Actualización 1.1 | | ES |
➕Añadidos:
Filtro de sesiones de tiempo y filtro de días de la semana agregados al apartado de filtro de tiempo.
Opción para agregar apalancamiento a la estrategia.
5 Moving Averages, RSI, Stochastic RSI, ADX, y Parabolic Sar se han agregado como indicadores para la estrategia.
Puedes escoger entre los 6 indicadores disponibles la forma de operar, alerta de entrada o filtro de entrada.
Añadido la opción de ATR para Take Profit.
La información del ticker y la temporalidad ahora se muestran en el dashboard.
Añadido personalización de visualización y color de los plots de indicadores.
Añadido personalización de visualización y color de los plots de operaciones mostradas en grafica.
📝Cambios:
Ahora al activar el filtro de tiempo es opcional añadir una fecha y hora de inicio o fin, pudiendo únicamente agregar una fecha de inicio o solamente una fecha de fin.
Los plots de operaciones han cambiados de plot() a creación de líneas con line.new().
Los plots de indicadores ahora se pueden controlar desde el apartado "plots".
Ahora se puede elegir el rango aceptable y negable de profit, winrate y profit factor desde el apartado "plots" para mostrarse en el dashboard.
Cambios estéticos en las separaciones de secciones dentro del apartado de configuraciones y dentro del propio código.
Se ha cambiado la función que hacía que los indicadores dieran entradas en base a velas heikin ashi, mire el código para más información.
⚙️Arreglos:
El dashboard label ahora se proyecta correctamente en todas las temporalidades incluyendo las temporalidades personalizadas.
Se han eliminado líneas y variables innecesarias para ocupar menos espacio en el código.
Se ha optimizado todo el código en general para evitar el uso de variables, líneas innecesarias y evitar los cálculos innecesarios, liberando espacio para declarar más variables y poder utilizar menos líneas de código.
Mean reversal QFL v3My aim is to make the bots trade as you would trading QFL manually and “by the book” or at least to my experience and understanding from the material out there of how you should plan a QFL trade.
Im absolutely not a pro trader, I have made my share of costly mistakes trying to be clever or Beeing impatient resulting in painful losses. QFL is we’re I’ve had consistently good results tough.
Is this where I have to say I’m not a financial advisor and all that? Well I’m not. As always Do your own research and backtest, backtest, backtest.
First: I believe no bot strategy are set and forget, while they can run unattended 80-90% of the time you're always going to find yourself in a situation where you will have to manually handle a bad deal. It would also make sense to be somewhat involved in the really good trades making the most out of them. That’s why understanding the strategy the bot Is using is really important, hence why I prefer QFL. It's an easy concept to understand, and proved to be a safe way of making steady profit in pretty much all market conditions if done right.
Some changes in how aggressive you are might be needed if you are the impatient kind of trader who needs to see a lot of deals happening. But it is an added risk. In those cases Luc would advise to start “nibbling” but that would be hard to implement in a bot but I will see if that’s something I can implement.
Same goes for going the more conservative route when market conditions calls for it.
QFL stands for Quickfingersluc, and sometimes it is referred to as the Base Strategy or Mean Reversals. Its main idea is about identifying the moment of panic selling and buying below the base level and utilizing Safety orders.
Base level or Support Level refers to the lowest price level that was reached before the moment the price started increasing again. At that level, you can notice that buyers of some cryptocurrencies make a strong reaction.
As a bit of a learning material i want to make a few points on important factors in trading using the QFL strategy:
• Identify strong bases
• Read the history of the chart
• No emotions
Trading QFL using a bot has it’s limitations:
· Some of the bases are questionable but im constantly trying to improve this
· The strategy don’t take into consideration chart history(success rate)*
· You need to follow a predefined (by you) buying ladder, hence not considering a particular coin's average price movement, which may vary quite a lot. This why I for now has limited the strategy to SIMPLE bots. So that unique alerts can be created for each pair.
· A set Take profit %, possibly making you miss out on higher profits(This is easy to change during a trade though), and no chance of selling in layers(This is coming soon).
1. Some of the bases are questionable
The strategy will start trades of bases that you wouldn’t consider being a strong base(or a base at all) when looking at the chart.
For those not as familiar with QFL. What is a base, and what qualifies as a strong base?
• A base is also called the Support Level, which is the lowest price level that was reached before the price started turning and increasing again.
• A strong base is recognized by a steep fall in price after breaking the base(Panic), followed by a big reaction pump.
• The reaction pump is the most important factor to say that it is a strong base.
• And also the last base, the one you are trading of is the one that counts
Tip: Look for V shapes on the chart, easy to spot when zoomed out.
2. The integrated signals don’t take into consideration chart history(success rate)*
How can you assess the success rate by looking at the chart?
After finding the bases based on the criterias from the 1st point. Looking at the, how many times did it respect the base after breaking it? 7/10, 8/10, 9/10 times? Great! Chances of the next trade also respecting the base is big, and I would consider raising the TP on that deal. Any lower than that I would keep a really close eye on the deal, or even consider closing the deal. And again remember the last base is the one that counts. If all the others are nice strong bases but that last one you are about to take a trade off is no good the base is invalidated so be cautious.
3. You need to follow a predefined (by you) buying ladder
Crypto is volatile, and there is a huge variation in price movements on all the coins.
Trading manually, looking at the chart gives you a good idea on how much a coin on avg. drops below base, and how big the following reaction is. This gives you an indication on how deep you need to set your layers, and where you can take profit.
Using the strategy you have the backtester to see how much max deviation has been in the past so that you can figure out what the optimal max deviation is.
4. A set Take profit %, possibly making you miss out on higher profits(This is easy to change during a trade though), and no chance of selling in layers.
Not going to say to much about this other than what I often do is:
When a bot has started a trade I usually take a look at the chart. If I like what I see, nice chart history, success rate and trading of a strong previous base etc, with the current base break resulting in a panic drop I will consider increasing the TP so that it will make more profit. This can be a bit risky but also very rewarding. Imagine filling all safeties and then selling just below base! Massive profits!! (Gotta be honest though, almost never stretch it that far with a bot though, but it is a possibility) .
If you have studied the chart and concluded that this particular trade has a 90% chance of success, there isn’t really any reason not to place TP just below base. This is where I would like to have the option of layering my sell orders as well so its something im working on implementing.
Trailing is an option in 3commas, but it’s slow to place orders making you miss a selling opportunity when the coin makes a sudden spike up.
ABOUT THIS STRATEGY
In this strategy we can also reverse the strategy and go short. But i must warn you that that is alot riskier.
QFL is meant to be used on higher TF's like 1hr, 2hr and 4hr. But this strategy also work well on lower Timeframes.
The script also simulates DCA strategy with parameters used in 3commas DCA bots for futures trading.
Experiment with parameters to find your trading setup.
Beware how large your total leveraged position is and how far can market go before you get liquidated!
Do that with the help of futures liquidation calculators you can find online!
Included:
An internal average price and profit calculating, instead of TV`s native one, which is subject to severe slippage.
A graphic interface, so levels are clearly visible and back-test analyzing made easier.
Long & Short direction of the strategy.
Table display a summary of past trades
Vertical colored lines appear when the new maximum deviation from the original price has
been reached
All the trading happens with total account capital, and all order sizes inputs are expressed in percent.
How to use:
- Add the script to the current chart
- Open the strategy settings
-Tweak the settings to to your liking.
-Make a SIMPLE bot in 3commas and use the same settings as you did in tradingview if you only want the strategy to send signals to open a deal and let 3commas handle the rest.
If you check safety orders, Take profit deal stop and Stop loss. The strategy will send all the orders to 3 commas. If that’s what you want set TP in 3commas to 50% set number of safety orders to 0 and keep stop loss unchecked.
- Insert bot details using the deal start condition message found in your 3commas bot.
- When happy, right click on the "..." next to the strategy name, then "Add alert'".
- Under "Condition", on the second line, chose "Any alert () function call". Add the webhook from 3commas( 3commas.io ), give it a name, use {{strategy.order.alert_message}} as a placeholder message and "create".
In the future this signal might make it to the 3commas marketplace. You can then subscribe to that signal where I have cherrypicked coins based on thorough backtesting and optimization.
How to obtain access to the script: send me a private message in Tradingview
Ultimate Strategy Shell [ArtK]This strategy shell script accepts entry/exit signals from an external study indicator.
It is built to cover most common trade execution strategies such as, multiple take profit levels, break even, trailing stop loss, position reverse, laddering and more.
It also aims to provide extended trade statistics such as the actual (win/loss) figures for trades instead of figures for orders as TradingView provides in the Strategy Test Overview.
Features
- 3 Take Profit levels.
- 3 Take Profit target type options (Percentage, Risk Reward Ratio or (IN DEVELOP) Strategy).
- 2 Stop Loss type options (Percentage, Strategy).
- Break Even stoop loss (will move the Stop Loss to the entry price after the 1st or 2nd Take Profit).
- Trailing Stop Loss (will move the Stop Loss after the last Take Profit at specified deviation on every candle).
- Trades Summary Label
Shows the number of wins and losses in a row.
Shows the actual (win/loss) figures for trades instead of figures for orders as TradingView provides in the Strategy Test Overview.
Shows the period from the first trade until the last trade.
Shows how many times each Take Profit level was reached (IN DEVELOP).
(IN DEVELOP) Shows the maximum Stop Loss when using the Stop Loss – Strategy option (helpful when estimating Stop Losses when leveraging).
Plots marks at the bottom of the chart to indicate winning or losing trades (helps to quickly find losing trades for example).
- Entry Filters
-- Date Time, allows placing trades only during the specified period.
-- ADX, filters trades below specified ADX value.
-- Max Stop Loss, can be enabled when the Stop Loss type is set to "Strategy". Used to prevent taking trades which exceed liquidation price.
-- Direction, will filter trades in a certain direction.
Instruction
- The strategy script relies on an external indicator therefore it is required to add the signal indicator first.
- To adapt the signal indicator to be compatible it must have only one plot.
-- The default value of the plot should be 1 when there is no buy/sell signal.
-- When the signal indicator signals BUY the line should plot the value
-- When the signal indicator signals SELL the line should plot the value
-- (I am aiming to support EXIT signals as well as the Stop Loss and Take Profit percentages in the near future)
- The first time you load the script it will show an error "Study Error: Signal source set to default ". This means the signal indicator was not selected.
The signal indicator should be selected in the strategy configuration panel option "Signal Source"
Trading PanelWhen trading, position sizing and risk calculation is the key to become successful.
We need to keep the losses small and adjust the position size according to what
risk we are prepared to take for the planned Entry.
Based on the Account Size and the max percentage we want to risk for any trade,
we calculate, for a number of fixed max Loss percentages:
- The Position size, both in percent and in the selected currency.
- Number of shares to buy.
- Where to put the Stop Loss.
We also calculate the numbers based on the ATR times a multiple.
The values are presented in a table format and will hopefully aid in selecting
a suitable Stop Loss (based on the chart situation) and hence the proper Position Size.
We also allow for expressing the Account size in currencies other than USD.
Example:
Account Size in USD and trading US stocks: select USD
Account Size in SEK but trading US stocks: select USDSEK
Multi-Market Swing Trader Webhook Ready [HullBuster]
Introduction
This is an all symbol swing trading strategy intended for webhook integration to live accounts. This script employs an adjustable bandwidth ping pong algorithm which can be run in long only, short only or bidirectional modes. Additionally, this script provides advanced features such as pyramiding and DCA. It has been in development for nearly three years and exposes over 90 inputs to accommodate varying risk reward ratios. Equipped with a proper configuration it is suitable for professional traders seeking quality trades from a cloud based platform. This is my most advanced Pine Script to date which combines my RangeV3 and TrendV2 scripts. Using this combination it tries to bridge the gap between range bound and trending markets. I have put a lot of time into creating a system that could transition by itself so as to require less human intervention and thus be able to withstand long periods in full automation mode.
As a Pine strategy, hypothetical performance can be easily back-tested. Allowing you to Iron out the configuration of your target instrument. Now with recent advancements from the Pine development team this same script can be connected to a webhook through the alert mechanism. The requirement of a separate study script has been completely removed. This really makes things a lot easier to get your trading system up and running. I would like to also mention that TradingView has made significant advancements to the back-end over the last year. Notably, compile times are much faster now permitting more complex algorithms to be implemented. Thank you TradingView!
I used QuantConnect as my role model and strived to produce a base script which could compete with higher end cloud based platforms while being attractive to similarly experienced traders. The versatility of the Pine Language combined with the greater selection of end point execution systems provides a powerful alternative to other cloud based platforms. At the very least, with the features available today, a modular trading system for everyday use is a reality. I hope you'll agree.
This is a swing trading strategy so the behavior of this script is to buy on weakness and sell on strength. In trading parlance this is referred to as Support and Resistance Trading. Support being the point at which prices stop falling and start rising. Resistance being the point at which prices stop rising and fall. The chart real estate between these two points being defined as the range. This script seeks to implement strategies to profit from placing trades within this region. Short positions at resistance and long positions at support. Just to be clear, the range as well as trends are merely illusions as the chart only receives prices. However, this script attempts to calculate pivot points from the price stream. Rising pivots are shorts and falling pivots are longs. I refer to pivots as a vertex in this script which adds structural components to the chart formation (point, sides and a base). When trading in “Ping Pong” mode long and short positions are interleaved continuously as long as there exists a detectable vertex.
This is a non-hedging script so those of us subject to NFA FIFO Rule 2-43(b) should be generally safe to webhook into signals emitted from this script. However, as covered later in this document, there are some technical limitations to this statement. I have tested this script on various instruments for over two years and have configurations for forex, crypto and stocks. This script along with my TrendV2 script are my daily trading vehicles as a webhook into my forex and crypto accounts. This script employs various high risk features that could wipe out your account if not used judiciously. You should absolutely not use this script if you are a beginner or looking for a get-rich-quick strategy. Also please see my CFTC RULE 4.41 disclosure statement at the end of the document. Really!
Does this script repaint? The short answer is yes, it does, despite my best efforts to the contrary. EMAs are central to my strategy and TradingView calculates from the beginning of the series so there is just no getting around this. However, Pine is improving everyday and I am hopeful that this issue will be address from an architectural level at some point in the future. I have programmed my webhook to compensate for this occurrence so, in the mean time, this my recommended way to handle it (at the endpoint and before the broker).
Design
This strategy uses a ping pong algorithm of my own design. Basically, trades bounce off each other along the price stream. Trades are produced as a series of reversals. The point at which a trade reverses is a pivot calculation. A measurement is made between the recent valley to peak which results in a standard deviation value. This value is an input to implied probability calculation.Yes, the same implied probability used in sports betting. Odds are then calculated to determine the likelihood of price action continuing or retracing to the pivot. Based on where the account is at alert time, the action could be an entry, take profit or pyramid signal. In this design, trades must occur in alternating sequence. A long followed by a short then another long followed by a short and so on. In range bound price action trades appear along the outer bands of the channel in the aforementioned sequence. Shorts on the top and longs at the bottom. Generally speaking, the widths of the trading bands can be adjusted using the vertex dynamics in Section 2. There are a dozen inputs in this section used to describe the trading range. It is not a simple adjustment. If pyramids are enabled the strategy overrides the ping pong reversal pattern and begins an accumulation sequence. In this case you will see a series of same direction trades.
This script uses twelve indicators on a single time frame. The original trading algorithms are a port from a C++ program on proprietary trading platform. I’ve converted some of the statistical functions to use standard indicators available on TradingView. The setups make heavy use of the Hull Moving Average in conjunction with EMAs that form the Bill Williams Alligator as described in his book “New Trading Dimensions” Chapter 3. Lag between the Hull and the EMAs play a key role in identifying the pivot points. I really like the Hull Moving Average. I use it in all my systems, including 3 other platforms. It’s is an excellent leading indicator and a relatively light calculation.
The trend detection algorithms rely on several factors:
1. Smoothed EMAs in a Willams Alligator pattern.
2. Number of pivots encountered in a particular direction.
3. Which side debt is being incurred.
4. Settings in Section 4 and 5 (long and short)
The strategy uses these factors to determine the probability of prices continuing in the most recent direction. My TrendV2 script uses a higher time frame to determine trend direction. I can’t use that method in this script without exceeding various TradingView limitations on code size. However, the higher time frame is the best way to know which trend is worth pursuing or better to bet against.
The entire script is around 2400 lines of Pine code which pushes the limits of what can be created on this platform given the TradingView maximums for: local scopes, run-time duration and compile time. The module has been through numerous refactoring passes and makes extensive use of ternary statements. As such, It takes a full minute to compile after adding it to a chart. Please wait for the hovering dots to disappear before attempting to bring up the input dialog box. Scrolling the chart quickly may bring up an hour glass.
Regardless of the market conditions: range or trend. The behavior of the script is governed entirely by the 91 inputs. Depending on the settings, bar interval and symbol, you can configure a system to trade in small ranges producing a thousand or more trades. If you prefer wider ranges with fewer trades then the vertex detection settings in Section 2 should employ stiffer values. To make the script more of a trend follower, adjustments are available in Section 4 and 5 (long and short respectively). Overall this script is a range trader and the setups want to get in that way. It cannot be made into a full blown trend trading system. My TrendV2 is equipped for that purpose. Conversely, this script cannot be effectively deployed as a scalper either. The vertex calculation require too much data for high frequency trading. That doesn’t work well for retail customers anyway. The script is designed to function in bar intervals between 5 minutes and 4 hours. However, larger intervals require more backtest data in order to create reliable configurations. TradingView paid plans (Pro) only provide 10K bars which may not be sufficient. Please keep that in mind.
The transition from swing trader to trend follower typically happens after a stop is hit. That means that your account experiences a loss first and usually with a pyramid stack so the loss could be significant. Even then the script continues to alternate trades long and short. The difference is that the strategy tries to be more long on rising prices and more short on falling prices as opposed to simply counter trend trading. Otherwise, a continuous period of rising prices results in a distinctly short pyramid stack. This is much different than my TrendV2 script which stays long on peaks and short on valleys. Basically, the plan is to be profitable in range bound markets and just lose less when a trend comes along. How well this actually plays out will depend largely on the choices made in the sectioned input parameters.
Sections
The input dialog for this script contains 91 inputs separated into six sections.
Section 1: Global settings for the strategy including calculation model, trading direction, exit levels, pyramid and DCA settings. This is where you specify your minimum profit and stop levels. You should setup your Properties tab inputs before working on any of the sections. It’s really important to get the Base Currency right before doing any work on the strategy inputs. It is important to understand that the “Minimum Profit” and “Limit Offset” are conditional exits. To exit at a profit, the specified value must be exceeded during positive price pressure. On the other hand, the “Stop Offset” is a hard limit.
Section 2: Vertex dynamics. The script is equipped with four types of pivot point indicators. Histogram, candle, fractal and transform. Despite how the chart visuals may seem. The chart only receives prices. It’s up to the strategy to interpret patterns from the number stream. The quality of the feed and the symbol’s bar characteristics vary greatly from instrument to instrument. Each indicator uses a fundamentally different pattern recognition algorithm. Use trial and error to determine the best fit for your configuration. After selecting an indicator type, there are eight analog fields that must be configured for that particular indicator. This is the hardest part of the configuration process. The values applied to these fields determine how the range will be measured. They have a big effect on the number of trades your system will generate. To see the vertices click on the “Show Markers” check box in this section. Red markers are long positions and blue markers are short. This will give you an idea of where trades will be placed in natural order.
Section 3: Event thresholds. Price spikes are used to enter and exit trades. The magnitude which define these spikes are configured here. The rise and fall events are primarily for pyramid placement. The rise and fall limits determine the exit threshold for the conditional “Limit Offset” field found in Section 1. These fields should be adjusted one at a time. Use a zero value to disengage every one but the one you are working on. Use the fill colors found in Section 6 to get a visual on the values applied to these fields. To make it harder for pyramids to enter stiffen the Event values. This is more of a hack as the formal pyramid parameters are in Section 1.
Section 4 and 5: Long and short settings. These are mirror opposite settings with all opposing fields having the same meaning. Its really easy to introduce data mining bias into your configuration through these fields. You must combat against this tendency by trying to keep your settings as uniform as possible. Wildly different parameters for long and short means you have probably fitted the chart. There are nine analog and thirteen Boolean fields per trade direction. This section is all about how the trades themselves will be placed along the range defined in Section 2. Generally speaking, more restrictive settings will result in less trades but higher quality. Remember that this strategy will enter long on falling prices and short on rising prices. So getting in the trade too early leads to a draw-down. However, this could be what you want if pyramiding is enabled. I, personally, have found that the best configurations come from slightly skewing one side. I just accept that the other side will be sub-par.
Section 6: Chart rendering. This section contains one analog and four Boolean fields. More or less a diagnostic tool. Of particular interest is the “Symbol Debt Sequence” field. This field contains a whole number which paints regions that have sustained a run of bad trades equal or greater than specified value. It is useful when DCA is enabled. In this script Dollar Cost Averaging on new positions continues only until the symbol debt is recouped. To get a better understanding on how this works put a number in this field and activate DCA. You should notice how the trade size increases in the colored regions. The “Summary Report” checkbox displays a blue information box at the live end of the chart. It exposes several metrics which you may find useful if manually trading this strategy from audible alerts or text messages.
Pyramids
This script features a downward pyramiding strategy which increases your position size on losing trades. On purely margin trades, this feature can be used to, hypothetically, increase the profit factor of positions (not individual trades). On long only markets, such as crypto, you can use this feature to accumulate coins at depressed prices. The way it works is the stop offset, applied in the Section 1 inputs, determines the maximum risk you intend to bear. Additional trades will be placed at pivot points calculated all the way down to the stop price. The size of each add on trade is increased by a multiple of its interval. The maximum number of intervals is limited by the “Pyramiding” field in the properties tab. The rate at which pyramid positions are created can be adjusted in Section 1. To see the pyramids click on the “Mark Pyramid Levels” check box in the same section. Blue triangles are painted below trades other than the primary.
Unlike traditional Martingale strategies, the result of your trade is not dependent on the profit or loss from the last trade. The position must recover the R1 point in order to close. Alternatively, you can set a “Pyramid Bale Out Offset” in Section 1 which will terminate the trade early. However, the bale out must coincide with a pivot point and result in a profitable exit in order to actually close the trade. Should the market price exceed the stop offset set in Section 1, the full value of the position, multiplied by the accepted leverage, will be realized as a loss to the trading account. A series of such losses will certainly wipe out your account.
Pyramiding is an advanced feature intended for professional traders with well funded accounts and an appropriate mindset. The availability of this feature is not intended to endorse or promote my use of it. Use at your own risk (peril).
DCA
In addition to pyramiding this script employs DCA which enables users to experiment with loss recovery techniques. This is another advanced feature which can increase the order size on new trades in response to stopped out or winning streak trades. The script keeps track of debt incurred from losing trades. When the debt is recovered the order size returns to the base amount specified in the properties tab. The inputs for this feature are found in section 3 and include a limiter to prevent your account from depleting capital during runaway markets. The main difference between DCA and pyramids is that this implementation of DCA applies to new trades while pyramids affect open positions. DCA is a popular feature in crypto trading but can leave you with large “bags” if your not careful. In other markets, especially margin trading, you’ll need a well funded account and much experience.
To be sure pyramiding and dollar cost averaging is as close to gambling as you can get in respectable trading exchanges. However, if you are looking to compete in a spot trading contest or just want to add excitement to your trading life style those features could find a place in your strategies. Although your backtest may show spectacular gains don’t expect your live trading account to do the same. Every backtest has some measure of data mining bias. Please remember that.
Webhook Integration
The TradingView alerts dialog provides a way to connect your script to an external system which could actually execute your trade. This is a fantastic feature that enables you to separate the data feed and technical analysis from the execution and reporting systems. Using this feature it is possible to create a fully automated trading system entirely on the cloud. Of course, there is some work to get it all going in a reliable fashion. To that end this script has several things going for it. First off, it is a strategy type script. That means that the strategy place holders such as {{strategy.position_size}} can be embedded in the alert message text. There are more than 10 variables which can write internal script values into the message for delivery to the specified endpoint. Additionally, my scripts output the current win streak and debt loss counts in the {{strategy.order.alert_message}} field. Depending on the condition, this script will output other useful values in the JSON “comment” field of the alert message. Here is an excerpt of the fields I use in my webhook signal:
"broker_id": "kraken",
"account_id": "XXX XXXX XXXX XXXX",
"symbol_id": "XMRUSD",
"action": "{{strategy.order.action}}",
"strategy": "{{strategy.order.id}}",
"lots": "{{strategy.order.contracts}}",
"price": "{{strategy.order.price}}",
"comment": "{{strategy.order.alert_message}}",
"timestamp": "{{time}}"
Though TradingView does a great job in dispatching your alert this feature does come with a few idiosyncrasies. Namely, a single transaction call in your script may cause multiple transmissions to the endpoint. If you are using placeholders each message describes part of the transaction sequence. A good example is closing a pyramid stack. Although the script makes a single strategy.close() call, the endpoint actually receives a close message for each pyramid trade. The broker, on the other hand, only requires a single close. The incongruity of this situation is exacerbated by the possibility of messages being received out of sequence. Depending on the type of order designated in the message, a close or a reversal. This could have a disastrous effect on your live account. This broker simulator has no idea what is actually going on at your real account. Its just doing the job of running the simulation and sending out the computed results. If your TradingView simulation falls out of alignment with the actual trading account lots of really bad things could happen. Like your script thinks your are currently long but the account is actually short. Reversals from this point forward will always be wrong with no one the wiser. Human intervention will be required to restore congruence. But how does anyone find out this is occurring? In closed systems engineering this is known as entropy. In practice your webhook logic should be robust enough to detect these conditions. Be generous with the placeholder usage and give the webhook code plenty of information to compare states. Both issuer and receiver. Don’t blindly commit incoming signals without verifying system integrity.
Operation
This is a swing trading strategy so the fundamental behavior of this script is to buy on weakness and sell on strength. As such trade orders are placed in a counter direction to price pressure. What you will see on the chart is a short position on peaks and a long position on valleys. This is slightly misleading since a range as well as a trend are best recognized, in hindsight, after the patterns occur on the chart. In the middle of a trade, one never knows how deep valleys will drop or how high peaks will rise. For certain, long trades will continue to trigger as the market prices fall and short trades on rising prices. This means that the maximum efficiency of this strategy is achieved in choppy markets where the price doesn’t extend very far from its adjacent pivot point. Conversely, this strategy will be the least efficient when market conditions exhibit long continuous single direction price pressure. Especially, when measured in weeks. Translation, the trend is not your friend with this strategy. Internally, the script attempts to recognize prolonged price pressure and changes tactics accordingly. However, at best, the goal is to weather the trend until the range bound market returns. At worst, trend detection fails and pyramid trades continue to be placed until the limit specified in the Properties tab is reached. In all likelihood this could trigger a margin call and if it hits the stop it could wipe out your account.
This script has been in beta test four times since inception. During all that time no one has been successful in creating a configuration from scratch. Most people give up after an hour or so. To be perfectly honest, the configuration process is a bear. I know that but there is no way, currently, to create libraries in Pine. There is also no way specify input parameters other than the flattened out 2-D inputs dialog. And the publish rules clearly state that script variations addressing markets or symbols (suites) are not permitted. I suppose the problem is systemic to be-all-end-all solutions like my script is trying to be. I needed a cloud strategy for all the symbols that I trade and since Pine does not support library modules, include files or inter process communication this script and its unruly inputs are my weapon of choice in the war against the market forces. It takes me about six hours to configure a new symbol. Also not all the symbols I configure are equally successful. I should mention that I have a facsimile of this strategy written in another platform which allows me to run a backtest on 10 years of historical data. The results provide me a sanity check on the inputs I select on this platform.
My personal configurations use a 10 minute bar interval on forex instruments and 15 minutes on crypto. I try to align my TradingView scripts to employ standard intervals available from the broker so that I can backtest longer durations than those available on TradingView. For example, Bitcoin at 15 minute bars is downloadable from several sources. I really like the 10 minute bar. It provides lots of detectable patterns and is easy to store many years in an SQL database.
The following steps provide a very brief set of instructions that will get you started but will most certainly not produce the best backtest. A trading system that you are willing to risk your hard earned capital will require a well crafted configuration that involves time, expertise and clearly defined goals. As previously mentioned, I have several example configurations that I use for my own trading that I can share with you if you like. To get hands on experience in setting up your own symbol from scratch please follow the steps below.
Step 1. Setup the Base currency and order size in the properties tab.
Step 2. Select the calculation presets in the Instrument Type field.
Step 3. Select “No Trade” in the Trading Mode field
Step 4. Select the Histogram indicator from Section 2. You will be experimenting with different ones so it doesn’t matter which one you try first.
Step 5. Turn on Show Markers in Section 2.
Step 6. Go to the chart and checkout where the markers show up. Blue is up and red is down. Long trades show up along the red markers and short trades on the blue.
Step 7. Make adjustments to “Base To Vertex” and “Vertex To Base” net change and ROC in Section 2. Use these fields to move the markers to where you want trades to be.
Step 8. Try a different indicator from Section 2 and repeat Step 7 until you find the best match for this instrument on this interval. This step is complete when the Vertex settings and indicator combination produce the most favorable results.
Step 9. Go to Section 4 and enable “Apply Red Base To Base Margin”.
Step 10. Go to Section 5 and enable “Apply Blue Base To Base Margin”.
Step 11. Go to Section 2 and adjust “Minimum Base To Base Blue” and “Minimum Base To Base Red”. Observe the chart and note where the markers move relative to each other. Markers further apart will produce less trades but will reduce cutoffs in “Ping Pong” mode.
Step 12. Turn off Show Markers in Section 2.
Step 13. Put in your Minimum Profit and Stop Loss in the first section. This is in pips or currency basis points (chart right side scale). Percentage is not currently supported. Note that the profit is taken as a conditional exit on a market order not a fixed limit. The actual profit taken will almost always be greater than the amount specified. The stop loss, on the other hand, is indeed a hard number which is executed by the TradingView broker simulator when the threshold is breached.
Step 14. Return to step 3 and select a Trading Mode (Long, Short, BiDir, Ping Pong). If you are planning to trade bidirectionally its best to configure long first then short. Combine them with “BiDir” or “Ping Pong” after setting up both sides of the trade individually. The difference between “BiDir” and “Ping Pong” is that “Ping Pong” uses position reversal and can cut off opposing trades less than the specified minimum profit. As a result “Ping Pong” mode produces the greatest number of trades.
Step 15. Take a look at the chart. Trades should be showing along the markers plotted earlier.
Step 16. Make adjustments to the Vertex fields in Section 2 until the TradingView performance report is showing a profit. This includes the “Minimum Base To Base” fields. If a profit cannot be achieved move on to Step 17.
Step 17. Improve the backtest profitability by adjusting the “Entry Net Change” and “Entry ROC” in Section 4 and 5.
Step 18. Enable the “Mandatory Snap” checkbox in Section 4 and 5 and adjust the “Snap Candle Delta” and “Snap Fractal Delta” in Section 2. This should reduce some chop producing unprofitable reversals.
Step 19. Increase the distance between opposing trades by adding an “Interleave Delta” in Sections 4 and 5. This is a floating point value which starts at 0.01 and typically does not exceed 2.0.
Step 20. Increase the distance between opposing trades even further by adding a “Decay Minimum Span” in Sections 4 and 5. This is an absolute value specified in the symbol’s quote currency (right side scale of the chart). This value is similar to the minimum profit and stop loss fields in Section 1.
Step 21. The “Buy Composite Strength” input works in tandem with “Long Decay Minimum Span” in Section 4. Try enabling and see if it improves the performance. This field is only relevant when there is a value in “Long Decay Minimum Span”.
Step 22. The “Sell Composite Weakness” input works in tandem with “Short Decay Minimum Span” in Section 5. Try enabling and see if it improves the performance. This field is only relevant when there is a value in “Short Decay Minimum Span”.
Step 23. Improve the backtest profitability by adjusting the “Adherence Delta” in Section 4 and 5. This field requires the “Adhere to Rising Trend” checkbox to be enabled.
Step 24. At this point your strategy should be more or less working. Experiment with the remaining check boxes in Section 4 and 5. Keep the ones which seem to improve the performance.
Step 25. Examine the chart and see that trades are being placed in accordance with your desired trading goals. This is an important step. If your desired model requires multiple trades per day then you should be seeing hundreds of trades on the chart. Alternatively, you may be looking to trade fewer steep peaks and deep valleys in which case you should see trades at major turning points. Don’t simply settle for what the backtest serves you. Work your configuration until the system aligns with your desired model. Try changing indicators and even intervals if you cannot reach your simulation goals. Generally speaking, the histogram and Candle indicators produce the most trades. The Fractal indicator captures the tallest peaks and valleys. The Transform indicator is the most reliable but doesn’t well work on all instruments.
Example Settings
To reproduce the performance shown on the chart please use the following configuration:
1. Select XBTUSD Kraken as the chart symbol.
2. On the properties tab set the Order Size to: 0.01 Bitcoin
3. On the properties tab set the Pyramiding to: 10
4. In Section 1: Select “Forex” for the Instrument Type
5. In Section 1: Select “Ping Pong” for the Trading Mode
6. In Section 1: Input 1200 for the Minimum Profit
7. In Section 1: Input 15000 for the Stop Offset
8. In Section 1: Input 1200 for the Pyramid Minimum Span
9. In Section 1: Check mark the Ultra Wide Pyramids
10. In Section 2: Check mark the Use Transform Indicator
So to be clear, I used a base position size of one - one hundredth of a Bitcoin and allow the script to add up to 10 downward pyramids. The example back-test did hit eight downward pyramids. That means the account would have to be able to withstand a base position size (0.01) times 28. The resulting position size is 0.28 of a Bitcoin. If the price of Bitcoin is 35K then the draw down amount (not including broker fees) would be $9800 dollars. Since I have a premium subscription my backtest chart includes 20K historical bars. That's roughly six months of data. As of today, pro accounts only get 10K bars so the performance cannot be exactly matched with such a difference in historical data. Please keep that in mind.
There are, of course, various ways to reduce the risk incurred from accumulating pyramids. You can increase the “Pyramid Minimum Span” input found in Section 2 which increases the space between each pyramid trade. Also you can set a “Pyramid Bale Out Offset” in the same input section. This lets you out of the trade faster on position recovery. For example: Set a value of 8000 into this input and the number of trades increase to 178 from 157. Since the positions didn’t go full term, more trades were created at less profit each. The total brute force approach would be to simply limit the number of pyramids in the Properties tab.
It should be noted that since this is crypto, accumulating on the long side may be what you want. If you are not trading on margin and thus outright buying coins on the Kraken exchange you likely are interested in increasing your Bitcoin position at depressed prices. This is a popular feature on some of the other crypto trading packages like CryptoHopper and Profit Trailer. Click on Enable TV Long Only Rule in Section 1. This switches the signal emitter to long only. However, you may still see short trades on the chart. They are treated as a close instead of a reversal.
Feel free to PM me with any questions related to this script. Thank you and happy trading!
CFTC RULE 4.41
These results are based on simulated or hypothetical performance results that have certain inherent limitations. Unlike the results shown in an actual performance record, these results do not represent actual trading. Also, because these trades have not actually been executed, these results may have under-or over-compensated for the impact, if any, of certain market factors, such as lack of liquidity. Simulated or hypothetical trading programs in general are also subject to the fact that they are designed with the benefit of hindsight. No representation is being made that any account will or is likely to achieve profits or losses similar to these being shown.
supertrend with 2tp by AkHi traders
This strategy is based on two take profit targets and scaling out strategy. The entry rule is very simple. Whenever supertrend show long trade is taken and vice versa...and you have to use minimum 2 contract size
Take Profit and Stop Loss
The first take profit is set at 3 points above the long entry and the second take profit is set at 6 points above the long entry. Meanwhile, the stop loss is set at 3 points below the long entry....u can change points for profit and loss
Money Management
When the first take profit is achieved, half of the position is closed. The rest of the position is open to achieve either second take profit or stop loss.
There are three outcomes when using this strategy. Let's say you enter the trade with 200 lot size and you are risking 2% of your equity.
1. The first outcome is when the price hits stop loss, you lose the entire 2%.
2. The second outcome is when the price hits the first take profit and you close half of your position. Meaning that you have gained 1%. Then you let the trade running and eventually it hits stop loss. The total loss is 0% because the remaining lot size which is 200/2=100 times by 20pips is 1%. You have gained the earlier 1% and then loss 1%. At this point, you are at break even.
3. The third outcome is similar to the second out but instead of hiring stop loss, the trade is running to your favor and hits the second take profit.
Therefore, you gained 1% from the first take profit and you gained another 2% for the second take profit. Your total gained is 3%
Default Strategy Inputs (Forex / Crypto)The code in this post contains a set of default strategy inputs I use in new projects / backtests in Tradingview.
Full code commentary is available on the Backtest-Rookies website. To comply with house rules, I cannot post the direct link here.
Features
Trade Direction: So that you can limit the strategy for long only, short only or trade in both directions. It is important to note that when you select “Long Only”, you will still see Short signals on the chart. However, they are only used to close a position rather than reverse it. This is the default behaviour for strategies. The same applies to “Short Only”.
Date Ranges: So that you can isolate backtesting to specific periods of interest such as bull or bear markets.
Sessions: So you can easily get an idea of the expected results during your own session. You may also notice that performance of the strategy varies depending on which session it is deployed in.
Some example stop losses: It is not an exhaustive list but it should be enough to provide some inspiration for different types of stops that you can experiment with.
Happy Scripting. I hope the community finds it useful.
Reversal Trading Bot Strategy[BullByte]Overview :
The indicator Reversal Trading Bot Strategy is crafted to capture potential market reversal points by combining momentum, volatility, and trend alignment filters. It uses a blend of technical indicators to identify both bullish and bearish reversal setups, ensuring that multiple market conditions are met before entering a trade.
Core Components :
Technical Indicators Used :
RSI (Relative Strength Index) :
Purpose : Detects divergence conditions by comparing recent lows/highs in price with the RSI.
Parameter : Length of 8.
Bollinger Bands (BB) :
Purpose : Measures volatility and identifies price levels that are statistically extreme.
Parameter : Length of 20 and a 2-standard deviation multiplier.
ADX (Average Directional Index) & DMI (Directional Movement Index) :
Purpose : Quantifies the strength of the trend. The ADX threshold is set at 20, and additional filters check for the alignment of the directional indicators (DI+ and DI–).
ATR (Average True Range) :
Purpose : Provides a volatility measure used to set stop levels and determine risk through trailing stops.
Volume SMA (Simple Moving Average of Volume ):
Purpose : Helps confirm strength by comparing the current volume against a 20-period average, with an optional filter to ensure volume is at least twice the SMA.
User-Defined Toggle Filters :
Volume Filter : Confirms that the volume is above average (or twice the SMA) before taking trades.
ADX Trend Alignment Filter : Checks that the ADX’s directional indicators support the trade direction.
BB Close Confirmation : Optionally refines the entry by requiring price to be beyond the upper or lower Bollinger Band rather than just above or below.
RSI Divergence Exit : Allows the script to close positions if RSI divergence is detected.
BB Mean Reversion Exit : Closes positions if the price reverts to the Bollinger Bands’ middle line.
Risk/Reward Filter : Ensures that the potential reward is at least twice the risk by comparing the distance to the Bollinger Band with the ATR.
Candle Movement Filter : Optional filter to require a minimum percentage move in the candle to confirm momentum.
ADX Trend Exit : Closes positions if the ADX falls below the threshold and the directional indicators reverse.
Entry Conditions :
Bullish Entry :
RSI Divergence : Checks if the current close is lower than a previous low while the RSI is above the previous low, suggesting bullish divergence.
Bollinger Confirmation : Requires that the price is above the lower (or upper if confirmation is toggled) Bollinger Band.
Volume & Trend Filters : Combines volume condition, ADX strength, and an optional candle momentum condition.
Risk/Reward Check : Validates that the trade meets a favorable risk-to-reward ratio.
Bearish Entry :
Uses a mirror logic of the bullish entry by checking for bearish divergence, ensuring the price is below the appropriate Bollinger level, and confirming volume, trend strength, candle pattern, and risk/reward criteria.
Trade Execution and Exit Strateg y:
Trade Execution :
Upon meeting the entry conditions, the strategy initiates a long or short position.
Stop Loss & Trailing Stops :
A stop-loss is dynamically set using the ATR value, and trailing stops are implemented as a percentage of the close price.
Exit Conditions :
Additional exit filters can trigger early closures based on RSI divergence, mean reversion (via the middle Bollinger Band), or a weakening trend as signaled by ADX falling below its threshold.
This multi-layered exit strategy is designed to lock in gains or minimize losses if the market begins to reverse unexpectedly.
How the Strategy Works in Different Market Conditions :
Trending Markets :
The ADX filter ensures that trades are only taken when the trend is strong. When the market is trending, the directional movement indicators help confirm the momentum, making the reversal signal more reliable.
Ranging Markets :
In choppy markets, the Bollinger Bands expand and contract, while the RSI divergence can highlight potential turning points. The optional filters can be adjusted to avoid false signals in low-volume or low-volatility conditions.
Volatility Management :
With ATR-based stop-losses and a risk/reward filter, the strategy adapts to current market volatility, ensuring that risk is managed consistently.
Recommendation on using this Strategy with a Trading Bot :
This strategy is well-suited for high-frequency trading (HFT) due to its ability to quickly identify reversal setups and execute trades dynamically with automated stop-loss and trailing exits. By integrating this script with a TradingView webhook-based bot or an API-driven execution system, traders can automate trade entries and exits in real-time, reducing manual execution delays and capitalizing on fast market movements.
Disclaimer :
This script is provided for educational and informational purposes only. It is not intended as investment advice. Trading involves significant risk, and you should always conduct your own research and analysis before making any trading decisions. The author is not responsible for any losses incurred while using this script.
TradZoo - EMA Crossover IndicatorDescription:
This EMA Crossover Trading Strategy is designed to provide precise Buy and Sell signals with confirmation, defined targets, and stop-loss levels, ensuring strong risk management. Additionally, a 30-candle gap rule is implemented to avoid frequent signals and enhance trade accuracy.
📌 Strategy Logic
✅ Exponential Moving Averages (EMAs):
Uses EMA 50 & EMA 200 for trend direction.
Buy signals occur when price action confirms EMA crossovers.
✅ Entry Confirmation:
Buy Signal: Occurs when either the current or previous candle touches the 200 EMA, and the next candle closes above the previous candle’s close.
Sell Signal: Occurs when either the current or previous candle touches the 200 EMA, and the next candle closes below the previous candle’s close.
✅ 30-Candle Gap Rule:
Prevents frequent entries by ensuring at least 30 candles pass before the next trade.
Improves signal quality and prevents excessive trading.
🎯 Target & Stop-Loss Calculation
✅ Buy Position:
Target: 2X the difference between the last candle’s close and the lowest low of the last 2 candles.
Stop Loss: The lowest low of the last 2 candles.
✅ Sell Position:
Target: 2X the difference between the last candle’s close and the highest high of the last 2 candles.
Stop Loss: The highest high of the last 2 candles.
📊 Visual Features
✅ Buy & Sell Signals:
Green Upward Arrow → Buy Signal
Red Downward Arrow → Sell Signal
✅ Target Levels:
Green Dotted Line: Buy Target
Red Dotted Line: Sell Target
✅ Stop Loss Levels:
Dark Red Solid Line: Stop Loss for Buy/Sell
💡 How to Use
🔹 Ideal for trend-following traders using EMAs.
🔹 Works best in volatile & trending markets (avoid sideways ranges).
🔹 Can be combined with RSI, MACD, or price action levels for added confluence.
🔹 Recommended timeframes: 1M, 5M, 15m, 1H, 4H, Daily (for best results).
🚀 Try this strategy and enhance your trading decisions with structured risk management!
IU Gap Fill StrategyThe IU Gap Fill Strategy is designed to capitalize on price gaps that occur between trading sessions. It identifies gaps based on a user-defined percentage threshold and executes trades when the price fills the gap within a day. This strategy is ideal for traders looking to take advantage of market inefficiencies that arise due to overnight or session-based price movements. An ATR-based trailing stop-loss is incorporated to dynamically manage risk and lock in profits.
USER INPUTS
Percentage Difference for Valid Gap - Defines the minimum gap size in percentage terms for a valid trade setup. ( Default is 0.2 )
ATR Length - Sets the lookback period for the Average True Range (ATR) calculation. (default is 14 )
ATR Factor - Determines the multiplier for the trailing stop-loss, helping in risk management. ( Default is 2.00 )
LONG CONDITION
A gap-up occurs, meaning the current session opens above the previous session’s close.
The price initially dips below the previous session's close but then recovers and closes above it.
The gap meets the valid percentage threshold set by the user.
The bar is not the first or last bar of the session to avoid false signals.
SHORT CONDITION
A gap-down occurs, meaning the current session opens below the previous session’s close.
The price initially moves above the previous session’s close but then closes below it.
The gap meets the valid percentage threshold set by the user.
The bar is not the first or last bar of the session to avoid false signals.
LONG EXIT
An ATR-based trailing stop-loss is set below the entry price and dynamically adjusts upwards as the price moves in favor of the trade.
The position is closed when the trailing stop-loss is hit.
SHORT EXIT
An ATR-based trailing stop-loss is set above the entry price and dynamically adjusts downwards as the price moves in favor of the trade.
The position is closed when the trailing stop-loss is hit.
WHY IT IS UNIQUE
Precision in Identifying Gaps - The strategy focuses on real price gaps rather than minor fluctuations.
Dynamic Risk Management - Uses ATR-based trailing stop-loss to secure profits while allowing the trade to run.
Versatility - Works on stocks, indices, forex, and any market that experiences session-based gaps.
Optimized Entry Conditions - Ensures entries are taken only when the price attempts to fill the gap, reducing false signals.
HOW USERS CAN BENEFIT FROM IT
Enhance Trade Timing - Captures high-probability trade setups based on market inefficiencies caused by gaps.
Minimize Risk - The ATR trailing stop-loss helps protect gains and limit losses.
Works in Different Market Conditions - Whether markets are trending or consolidating, the strategy adapts to potential gap fill opportunities.
Fully Customizable - Users can fine-tune gap percentage, ATR settings, and stop-loss parameters to match their trading style.
Sniper Trade Pro (ES 15-Min) - Topstep Optimized🔹 Overview
Sniper Trade Pro is an advanced algorithmic trading strategy designed specifically for E-mini S&P 500 (ES) Futures on the 15-minute timeframe. This strategy is optimized for Topstep 50K evaluations, incorporating strict risk management to comply with their max $1,000 daily loss limit while maintaining a high probability of success.
It uses a multi-confirmation approach, integrating:
✅ Money Flow Divergence (MFD) → To track liquidity imbalances and institutional accumulation/distribution.
✅ Trend Confirmation (EMA + VWAP) → To identify strong trend direction and avoid choppy markets.
✅ ADX Strength Filter → To ensure entries only occur in trending conditions, avoiding weak setups.
✅ Break-Even & Dynamic Stop-Losses → To reduce drawdowns and protect profits dynamically.
This script automatically generates Buy and Sell signals and provides built-in risk management for automated trading execution through TradingView Webhooks.
🔹 How Does This Strategy Work?
📌 1. Trend Confirmation (EMA + VWAP)
The strategy uses:
✔ 9-EMA & 21-EMA: Fast-moving averages to detect short-term momentum.
✔ VWAP (Volume-Weighted Average Price): Ensures trades align with institutional volume flow.
How it works:
Bullish Condition: 9-EMA above 21-EMA AND price above VWAP → Confirms buy trend.
Bearish Condition: 9-EMA below 21-EMA AND price below VWAP → Confirms sell trend.
📌 2. Liquidity & Money Flow Divergence (MFD)
This indicator measures liquidity shifts by tracking momentum changes in price and volume.
✔ MFD Calculation:
Uses Exponential Moving Average (EMA) of Momentum (MOM) to detect changes in buying/selling pressure.
If MFD is above its moving average, it signals liquidity inflows → bullish strength.
If MFD is below its moving average, it signals liquidity outflows → bearish weakness.
Why is this important?
Detects when Smart Money is accumulating or distributing before major moves.
Filters out false breakouts by confirming momentum strength before entry.
📌 3. Trade Entry Triggers (Candlestick Patterns & ADX Filter)
To avoid random entries, the strategy waits for specific candlestick confirmations with ADX trend strength:
✔ Bullish Entry (Buy Signal) → Requires:
Bullish Engulfing Candle (Reversal confirmation)
ADX > 20 (Ensures strong trending conditions)
MFD above its moving average (Liquidity inflows)
9-EMA > 21-EMA & price above VWAP (Trend confirmation)
✔ Bearish Entry (Sell Signal) → Requires:
Bearish Engulfing Candle (Reversal confirmation)
ADX > 20 (Ensures strong trending conditions)
MFD below its moving average (Liquidity outflows)
9-EMA < 21-EMA & price below VWAP (Trend confirmation)
📌 4. Risk Management & Profit Protection
This strategy is built with strict risk management to maintain low drawdowns and maximize profits:
✔ Dynamic Position Sizing → Automatically adjusts trade size to risk a fixed $400 per trade.
✔ Adaptive Stop-Losses → Uses ATR-based stop-loss (0.8x ATR) to adapt to market volatility.
✔ Take-Profit Targets → Fixed at 2x ATR for a Risk:Reward ratio of 2:1.
✔ Break-Even Protection → Moves stop-loss to entry once price moves 1x ATR in profit, locking in gains.
✔ Max Daily Loss Limit (-$1,000) → Stops trading if total losses exceed $1,000, complying with Topstep rules.
FVG Breakout Lite by tradingbauhausExplanation of "FVG Breakout Lite by tradingbauhaus"
This script is a trading strategy built for TradingView that helps you spot and trade "Fair Value Gaps" (FVGs)—price areas where the market moved quickly, leaving a gap that might act as support or resistance later. It’s designed to catch breakout opportunities when the price moves strongly in one direction, with extra filters to make trades more reliable. Here’s how it works and how you can use it:
What It Does
1. Finds Fair Value Gaps (FVGs):
A "Bullish FVG" happens when the price jumps up quickly, leaving a gap below where it didn’t trade much (e.g., today’s low is higher than the high from two bars ago).
A "Bearish FVG" is the opposite: the price drops fast, leaving a gap above (e.g., today’s high is lower than the low from two bars ago).
The script draws colored boxes on your chart to show these gaps: green for bullish, red for bearish.
2. Spots Breakouts:
It looks for "strong" FVGs by comparing them to a trend (based on the highest highs and lowest lows over a set period).
If a bullish gap forms above the recent highs, or a bearish gap below the recent lows, it’s marked as a breakout opportunity.
3. Adds a Volume Check:
Trades only happen if the market’s volume is higher than usual (e.g., 1.2x the average volume over the last 20 bars). This helps ensure the breakout has real momentum behind it.
4. Trades Automatically:
Long Trades (Buy): If a bullish breakout FVG forms and volume is high, it buys at the current price.
Short Trades (Sell): If a bearish breakout FVG forms with high volume, it sells short.
Each trade comes with a stop loss (to limit losses) and a take profit (to lock in gains), both adjustable by you.
5. Shows Mitigation Lines (Optional):
If you turn on "Display Mitigation Zones," it draws lines at the edge of each breakout FVG. These lines show where the price might return to "fill" the gap later, helping you see key levels.
6. Includes Webull Costs:
The script factors in real trading fees from Webull, like tiny SEC and FINRA fees for selling, and a daily margin cost if you’re borrowing money to trade. These don’t show up on the chart but affect the strategy’s performance in backtesting.
How to Use It
1. Add to Your Chart:
Copy the script into TradingView’s Pine Editor, click "Add to Chart," and it’ll start drawing FVGs and running the strategy.
2. Customize Settings:
Trend Period (Default: 25): How many bars it looks back to define the trend. Longer periods mean fewer but stronger signals.
Volume Lookback (Default: 20) & Volume Threshold (Default: 1.2): Adjust how it measures "high volume." Increase the threshold for stricter trades.
Stop Loss % (Default: 1.5%) & Take Profit % (Default: 3%): Set how much you’re willing to lose or aim to gain per trade.
Margin Rate % (Default: 8.74%): Webull’s rate for borrowing money—lower it if your account qualifies for a better rate.
Display Mitigation Zones (Default: On): Toggle this to see or hide the gap lines.
Colors: Change the green (bullish) and red (bearish) shades to suit your chart.
3. Backtest It:
Go to the "Strategy Tester" tab in TradingView to see how it performs on past data. It’ll show trades, profits, losses, and Webull fees included.
4. Watch It Work:
Green boxes mean bullish FVGs; red boxes mean bearish FVGs. If volume spikes and the price breaks out, you’ll see trades happen automatically.
What to Expect
Visuals: You’ll see colored boxes for FVGs and optional lines showing where they start. These help you spot key price zones even if you’re not trading.
Trades: It’s selective—only trades when FVGs align with a breakout and volume confirms it. Expect fewer trades but with higher potential.
Risk: The stop loss keeps losses in check, while the take profit aims for a 2:1 reward-to-risk ratio by default (3% gain vs. 1.5% loss).
Costs: Webull’s fees are small but baked into the results, so you’re seeing a realistic picture of profits.
Tips for Users
Test it on a small timeframe (like 5-minute charts) for day trading or a larger one (like daily) for swing trading.
Play with the volume threshold—if you get too few trades, lower it (e.g., 1.1); if too many, raise it (e.g., 1.5).
Watch how price reacts to the mitigation lines—they’re often support or resistance zones traders target.
This strategy is lightweight, focused, and built for traders who like breakouts with a bit of confirmation. It’s not foolproof (no strategy is!), but it gives you a clear way to trade FVGs with some smart filters.
IronBot v4IronBot v4 – Trading Strategy Overview
1. Quick Context
IronBot v4 is a trading strategy designed for users who want a simple yet effective approach to reading the markets. It uses a combination of Fibonacci retracement levels, custom logic triggers, and innovative modules (EMA validation, Iron Impulse Shield and Iron Auto Volume Detector) to identify potential entry and exit points, strengthening the strategy’s detection of sudden market volatility or shifts in trading volume.
2. Theoretical Details
Fibonacci Analysis
The script identifies recent market highs and lows, then calculates key Fibonacci levels (high- and low-based). These levels can help confirm potential reversals or trends.
EMA Option
When enabled, the exponential moving average (EMA) offers additional validation for trade entries. If the current price remains above a certain EMA threshold, long positions may be favored; conversely, if it stays below the EMA, short positions may be initiated.
IIS (Iron Impulse Shield)
IIS helps to filter out risky trades by measuring recent price shocks or surges. If an extreme movement is detected, the strategy may temporarily disable longs or shorts to avoid false signals.
IAVD (Iron Auto Volume Detector)
This functionality automatically detects the average market volume over a defined period (regardless of the market, since it relies on real data). When entering a position, it ensures that overall volume is high enough to confirm a genuinely active, robust market. By providing an additional filter, it can strengthen the decision-making process whenever the market’s participation level is in question.
Panel
IronBot v4 displays a real-time backtest panel that summarizes the selected configuration (including the current pair, analysis window, enabled filters), as well as showing net profit, applicable exchange fees, country taxes, and the final net balance. This gives traders an immediate overview of strategy performance and risk metrics.
What Pinescript Adds Visually
The script plots:
Fibonacci levels (highlighting potential reversal zones)
Trend lines indicating bullish (green) or bearish (red) lean
Optional EMA line
Optional Fibonacci forecast lines for anticipating future moves
Automatic labeling of entry, take-profit, and stop-loss levels, indicating the profit percentage of each trade.
3. Explanation of Inputs
The strategy exposes multiple inputs that can be toggled or configured by the user:
Analysis Window : Dictates how many bars to consider for high/low calculations and the fib retracement thresholds.
TRADES
Display TP/SL: For displaying Take profits and Stop loss.
Display Forecast: When enabled, this feature calculates and projects possible future Fibonacci retracements using historical data, helping traders anticipate potential upcoming trade setups.
Leverage: Only used for the Panel and not for trades. Lets you amplify your position size; higher leverage increases potential gains but also heightens risk. TradingView strategy is using properties for doing this.
Exchange Maker Fees & Exchange Taker Fees: Only used for the Panel and not for trades. Define the percentage cost applied by your exchange for maker and taker trades, respectively. These fees are accounted for in final profit calculations of the Panel.
Country Tax: Only used for the Panel and not for trades. Specifies a tax percentage to be deducted from net profits.
STOP LOSS and TAKE PROFITS
Stop-Loss & Take-Profit Parameters: Controls the percentage distances at which the strategy will exit positions. Additionally, you can configure up to four distinct take-profit levels (TP1 through TP4). Each level should be higher target than the previous one, and you can assign a specific percentage of the total position to close at each TP, ensuring the sum equals 100%. A break-even feature is also available when multiple TPs are used.
EMA
EMA (Exponential Moving Average) Option: When enabled, the strategy opens long trades only if the current price is above the specified EMA length, and opens short trades only if it is below that threshold.
PANELS
Show Panel: For displaying the backtest integrated panel.
IRON IMPULSE SHIELD (IIS)
IIS (Iron Impulse Shield) Option: When enabled, IIS continuously monitors recent price volatility depending on the analysis window set. If the market experiences an extreme surge or drop beyond a specified threshold, IIS temporarily blocks new long or short positions.
IRON AUTO VOLUME DETECTOR (IAVD)
IAVD (Iron Auto Volume Detector) Option: When enabled, it continuously measures the average market volume over a special period, irrespective of the specific trading pair. This ensures that IronBot v4 focuses on markets with robust participation, reducing the likelihood of entering trades during low-liquidity conditions.
By changing these values, IronBot v4 reacts differently to market structure and risk management requirements. Stop-loss and take-profit levels will adjust accordingly, while advanced filters (like EMA or IIS) influence when trades can open.
4. TradingView Strategy Properties
IronBot v4 uses the built-in TradingView “strategy” functionality. In particular:
Order Placement: The code calls strategy.entry() and strategy.close() for direct orders, ensuring signals are sent immediately (no limit orders are used). This helps connect with exchange signal bots for automated execution.
Initial Capital: The code uses initial capital defined in properties for calculating Net balance in the integrated panel.
On bar close: This strategy fill orders on bar close.
Pyramiding: This strategy can take only 1 successive trade in the same direction
Be careful to configure your leverage input depending on your strategy properties.
5. Visualization
5. Purpose & Disclaimer
This script is for educational purposes only and does not constitute financial advice. Past performance does not guarantee future results. Always confirm your own risk tolerance and consult a financial professional before placing live trades. Trading leveraged products can involve substantial risk of loss.
[TehThomas] - ICT Liquidity sweepsThe ICT Liquidity Sweeps Indicator is designed to track liquidity zones in the market areas where stop-losses and pending orders are typically clustered. This indicator marks buyside liquidity (resistance) and sellside liquidity (support), helping traders identify areas where price is likely to manipulate liquidity before making a significant move.
This tool is based on Inner Circle Trader (ICT) Smart Money Concepts, which emphasize how institutional traders, or “Smart Money,” manipulate liquidity to fuel price movements. By identifying these zones, traders can anticipate liquidity sweeps and position themselves accordingly.
⚙️ How It Works
1️⃣ Detects Key Liquidity Zones
The script automatically identifies significant swing highs and swing lows in price action using a pivot-based method.
A swing high (buyside liquidity) is a peak where price struggles to break higher, forming a resistance level.
A swing low (sellside liquidity) is a valley where price struggles to go lower, creating a support level.
These liquidity points are prime targets for liquidity sweeps before a true trend direction is confirmed.
2️⃣ Draws Liquidity Lines
Once a swing high or low is identified, a horizontal line is drawn at that level.
The lines extend to the right, serving as future liquidity targets until they are broken.
The indicator allows customization in terms of color, line width, and maximum number of liquidity lines displayed at once.
3️⃣ Handles Liquidity Sweeps
When price breaks a liquidity level, the indicator reacts based on the chosen action setting:
Dotted/Dashed: The line remains visible but changes style to indicate a sweep.
Delete: The line is completely removed once price has interacted with it.
This feature ensures that traders can easily spot where liquidity has been taken and determine whether a reversal or continuation is likely.
4️⃣ Prevents Chart Clutter
To maintain a clean chart, the script limits the number of liquidity lines displayed at any given time.
When new liquidity zones are formed, the oldest lines are automatically removed, keeping the focus on the most relevant liquidity zones.
🎯 How to Use the ICT Liquidity Sweeps Indicator
🔍 Identifying Liquidity Grabs
This indicator helps you identify areas where Smart Money is targeting liquidity before making a move.
Buyside Liquidity (BSL) Sweeps:
Occur when price spikes above a resistance level before reversing downward.
Indicate that Smart Money has hunted stop-losses and buy stops before driving price lower.
Sellside Liquidity (SSL) Sweeps:
Occur when price drops below a support level before reversing upward.
Indicate that Smart Money has collected liquidity from stop-losses and sell stops before pushing price higher.
📈 Combining with Market Structure Shifts (MSS)
One of the best ways to use this indicator is in conjunction with our Market Structure Shifts Indicator.
Liquidity sweeps + MSS Confirmation give strong high-probability trade setups:
Wait for a liquidity sweep (price takes out a liquidity level).
Look for an MSS in the opposite direction (e.g., price sweeps a high, then breaks a recent low).
Enter the trade in the new direction with stop-loss above/below the liquidity sweep.
📊 Entry & Exit Strategies
Long Trade Example:
Price sweeps a key sellside liquidity level (SSL) → creates a false breakdown.
MSS confirms a reversal (price breaks structure upwards).
Enter long position after confirmation.
Stop-loss below the liquidity grab to minimize risk.
Short Trade Example:
Price sweeps a key buyside liquidity level (BSL) → takes liquidity above resistance.
MSS confirms a bearish move (price breaks a key support level).
Enter short position after confirmation.
Stop-loss above the liquidity grab.
🚀 Why This Indicator is a Game-Changer
✅ Helps Identify Smart Money Manipulation – Understand where institutions are likely to grab liquidity before the real move happens.
✅ Enhances Market Structure Analysis – When paired with MSS, liquidity sweeps become powerful signals for trend reversals.
✅ Filters Out False Breakouts – Many traders get caught in liquidity grabs. This indicator helps avoid bad entries.
✅ Keeps Your Chart Clean – The auto-limiting feature ensures that only the most relevant liquidity levels remain visible.
✅ Works on Any Timeframe – Whether you’re a scalper, day trader, or swing trader, liquidity concepts apply universally.
📌 Final Thoughts
The ICT Liquidity Sweeps Indicator is a must-have tool for traders who follow Smart Money Concepts. By tracking liquidity levels and highlighting sweeps, it allows traders to enter trades with precision while avoiding false breakouts.
When combined with Market Structure Shifts (MSS), this strategy becomes even more powerful, offering traders an edge in spotting reversals and timing entries effectively.
__________________________________________
Thanks for your support!
If you found this idea helpful or learned something new, drop a like 👍 and leave a comment—I’d love to hear your thoughts! 🚀
Make sure to follow me for more price action insights, free indicators, and trading strategies. Let’s grow and trade smarter together! 📈✨
Bullish Reversal Bar Strategy [Skyrexio]Overview
Bullish Reversal Bar Strategy leverages the combination of candlestick pattern Bullish Reversal Bar (description in Methodology and Justification of Methodology), Williams Alligator indicator and Williams Fractals to create the high probability setups. Candlestick pattern is used for the entering into trade, while the combination of Williams Alligator and Fractals is used for the trend approximation as close condition. Strategy uses only long trades.
Unique Features
No fixed stop-loss and take profit: Instead of fixed stop-loss level strategy utilizes technical condition obtained by Fractals and Alligator or the candlestick pattern invalidation to identify when current uptrend is likely to be over (more information in "Methodology" and "Justification of Methodology" paragraphs)
Configurable Trading Periods: Users can tailor the strategy to specific market windows, adapting to different market conditions.
Trend Trade Filter: strategy uses Alligator and Fractal combination as high probability trend filter.
Methodology
The strategy opens long trade when the following price met the conditions:
1.Current candle's high shall be below the Williams Alligator's lines (Jaw, Lips, Teeth)(all details in "Justification of Methodology" paragraph)
2.Price shall create the candlestick pattern "Bullish Reversal Bar". Optionally if MFI and AO filters are enabled current candle shall have the decreasing AO and at least one of three recent bars shall have the squat state on the MFI (all details in "Justification of Methodology" paragraph)
3.If price breaks through the high of the candle marked as the "Bullish Reversal Bar" the long trade is open at the price one tick above the candle's high
4.Initial stop loss is placed at the Bullish Reversal Bar's candle's low
5.If price hit the Bullish Reversal Bar's low before hitting the entry price potential trade is cancelled
6.If trade is active and initial stop loss has not been hit, trade is closed when the combination of Alligator and Williams Fractals shall consider current trend change from upward to downward.
Strategy settings
In the inputs window user can setup strategy setting:
Enable MFI (if true trades are filtered using Market Facilitation Index (MFI) condition all details in "Justification of Methodology" paragraph), by default = false)
Enable AO (if true trades are filtered using Awesome Oscillator (AO) condition all details in "Justification of Methodology" paragraph), by default = false)
Justification of Methodology
Let's explore the key concepts of this strategy and understand how they work together. The first and key concept is the Bullish Reversal Bar candlestick pattern. This is just the single bar pattern. The rules are simple:
Candle shall be closed in it's upper half
High of this candle shall be below all three Alligator's lines (Jaw, Lips, Teeth)
Next, let’s discuss the short-term trend filter, which combines the Williams Alligator and Williams Fractals. Williams Alligator
Developed by Bill Williams, the Alligator is a technical indicator that identifies trends and potential market reversals. It consists of three smoothed moving averages:
Jaw (Blue Line): The slowest of the three, based on a 13-period smoothed moving average shifted 8 bars ahead.
Teeth (Red Line): The medium-speed line, derived from an 8-period smoothed moving average shifted 5 bars forward.
Lips (Green Line): The fastest line, calculated using a 5-period smoothed moving average shifted 3 bars forward.
When the lines diverge and align in order, the "Alligator" is "awake," signaling a strong trend. When the lines overlap or intertwine, the "Alligator" is "asleep," indicating a range-bound or sideways market. This indicator helps traders determine when to enter or avoid trades.
Fractals, another tool by Bill Williams, help identify potential reversal points on a price chart. A fractal forms over at least five consecutive bars, with the middle bar showing either:
Up Fractal: Occurs when the middle bar has a higher high than the two preceding and two following bars, suggesting a potential downward reversal.
Down Fractal: Happens when the middle bar shows a lower low than the surrounding two bars, hinting at a possible upward reversal.
Traders often use fractals alongside other indicators to confirm trends or reversals, enhancing decision-making accuracy.
How do these tools work together in this strategy? Let’s consider an example of an uptrend.
When the price breaks above an up fractal, it signals a potential bullish trend. This occurs because the up fractal represents a shift in market behavior, where a temporary high was formed due to selling pressure. If the price revisits this level and breaks through, it suggests the market sentiment has turned bullish.
The breakout must occur above the Alligator’s teeth line to confirm the trend. A breakout below the teeth is considered invalid, and the downtrend might still persist. Conversely, in a downtrend, the same logic applies with down fractals.
How we can use all these indicators in this strategy? This strategy is a counter trend one. Candle's high shall be below all Alligator's lines. During this market stage the bullish reversal bar candlestick pattern shall be printed. This bar during the downtrend is a high probability setup for the potential reversal to the upside: bulls were able to close the price in the upper half of a candle. The breaking of its high is a high probability signal that trend change is confirmed and script opens long trade. If market continues going down and break down the bullish reversal bar's low potential trend change has been invalidated and strategy close long trade.
If market really reversed and started moving to the upside strategy waits for the trend change form the downtrend to the uptrend according to approximation of Alligator and Fractals combination. If this change happens strategy close the trade. This approach helps to stay in the long trade while the uptrend continuation is likely and close it if there is a high probability of the uptrend finish.
Optionally users can enable MFI and AO filters. First of all, let's briefly explain what are these two indicators. The Awesome Oscillator (AO), created by Bill Williams, is a momentum-based indicator that evaluates market momentum by comparing recent price activity to a broader historical context. It assists traders in identifying potential trend reversals and gauging trend strength.
AO = SMA5(Median Price) − SMA34(Median Price)
where:
Median Price = (High + Low) / 2
SMA5 = 5-period Simple Moving Average of the Median Price
SMA 34 = 34-period Simple Moving Average of the Median Price
This indicator is filtering signals in the following way: if current AO bar is decreasing this candle can be interpreted as a bullish reversal bar. This logic is applicable because initially this strategy is a trend reversal, it is searching for the high probability setup against the current trend. Decreasing AO is the additional high probability filter of a downtrend.
Let's briefly look what is MFI. The Market Facilitation Index (MFI) is a technical indicator that measures the price movement per unit of volume, helping traders gauge the efficiency of price movement in relation to trading volume. Here's how you can calculate it:
MFI = (High−Low)/Volume
MFI can be used in combination with volume, so we can divide 4 states. Bill Williams introduced these to help traders interpret the interaction between volume and price movement. Here’s a quick summary:
Green Window (Increased MFI & Increased Volume): Indicates strong momentum with both price and volume increasing. Often a sign of trend continuation, as both buying and selling interest are rising.
Fake Window (Increased MFI & Decreased Volume): Shows that price is moving but with lower volume, suggesting weak support for the trend. This can signal a potential end of the current trend.
Squat Window (Decreased MFI & Increased Volume): Shows high volume but little price movement, indicating a tug-of-war between buyers and sellers. This often precedes a breakout as the pressure builds.
Fade Window (Decreased MFI & Decreased Volume): Indicates a lack of interest from both buyers and sellers, leading to lower momentum. This typically happens in range-bound markets and may signal consolidation before a new move.
For our purposes we are interested in squat bars. This is the sign that volume cannot move the price easily. This type of bar increases the probability of trend reversal. In this indicator we added to enable the MFI filter of reversal bars. If potential reversal bar or two preceding bars have squat state this bar can be interpret as a reversal one.
Backtest Results
Operating window: Date range of backtests is 2023.01.01 - 2024.12.31. It is chosen to let the strategy to close all opened positions.
Commission and Slippage: Includes a standard Binance commission of 0.1% and accounts for possible slippage over 5 ticks.
Initial capital: 10000 USDT
Percent of capital used in every trade: 50%
Maximum Single Position Loss: -5.29%
Maximum Single Profit: +29.99%
Net Profit: +5472.66 USDT (+54.73%)
Total Trades: 103 (33.98% win rate)
Profit Factor: 1.634
Maximum Accumulated Loss: 1231.15 USDT (-8.32%)
Average Profit per Trade: 53.13 USDT (+0.94%)
Average Trade Duration: 76 hours
How to Use
Add the script to favorites for easy access.
Apply to the desired timeframe and chart (optimal performance observed on 4h ETH/USDT).
Configure settings using the dropdown choice list in the built-in menu.
Set up alerts to automate strategy positions through web hook with the text: {{strategy.order.alert_message}}
Disclaimer:
Educational and informational tool reflecting Skyrex commitment to informed trading. Past performance does not guarantee future results. Test strategies in a simulated environment before live implementation
These results are obtained with realistic parameters representing trading conditions observed at major exchanges such as Binance and with realistic trading portfolio usage parameters.
Dynamic Support and Resistance Pivot Strategy The Dynamic Support and Resistance Pivot Strategy is a flexible and adaptive tool designed to identify short-term support and resistance levels using the concept of price pivots.
### Key Elements of the Strategy
1. Pivot points as support and resistance levels
Pivots are significant turning points on the price chart, often marking local highs and lows where the price has reversed direction. A pivot high occurs when the price forms a local peak, while a pivot low occurs when the price forms a local trough. When a new pivot high is formed, it creates a resistance level. Conversely, when a new pivot low is formed, it creates a support level.
The strategy continuously updates these levels as new pivots are detected, ensuring they remain relevant to the current market conditions. By identifying these price levels, the strategy dynamically adjusts to market conditions, allowing it to adapt to both trending and ranging markets, since it has a long target and can perform reversal operations.
2. Entry Criteria
- Buy (Long): A long position is triggered when the price is near the support level and then crosses it from below to above. This suggests that the price has found support and may start moving upwards.
- Sell (Short): A short position is triggered when the price is near the resistance level and then crosses it from above to below. This indicates that the price may be reversing and moving downward.
3. Support/Resistance distance (%)
- This parameter establishes a percentage range around the identified support and resistance level. For example, if the Support Resistance Distance is 0.4% (default), the closing price must be within a range of 0.4% above support or below the resistance to be considered "close" and trigger a trade.
4. Exit criteria
- Take profit = 27 %
- Stop loss = 10 %
- Reversal if a new entry point is identified in the opposite direction
5. No Repainting
- The Dynamic Support and Resistance Pivot Strategy is not subject to repainting.
6. Position Sizing by Equity and risk management
- This strategy has a default configuration to operate with 35% of the equity. The stop loss is set to 10% from the entry price. This way, the strategy is putting at risk about 10% of 35% of equity, that is, around 3.5% of equity for each trade. The percentage of equity and stop loss can be adjusted by the user according to their risk management.
7. Backtest results
- This strategy was subjected to backtest and operations in replay mode on **1000000MOGUSDT.P**, with the inclusion of transaction fees at 0.12% and slipagge of 5 ticks, and the past results have shown consistent profitability. Past results are no guarantee of future results. The strategy's backtest results may even be due to overfitting with past data.
8. Chart Visualization
- Support and resistance levels are displayed as green (support) and red (resistance) lines.
- Pivot prices are displayed as green (pivot low) and red (pivot high) labels.
In this image above, the Support/Resistance distance (%) parameter was set to 0.8.
9. Default Configuration
Chart Timeframe: 1h
Pivot Lengh: 2
Support/Resistance distance (%): 0.4*
Stop Loss: 10 %
Take Profit: 27 %
* This parameter can alternatively be set to 0.8.
10. Alternative Configuration
Chart Timeframe: 20 min
Pivot Lengh: 4
Support/Resistance distance (%): 0.1
Stop Loss: 10 %
Take Profit: 25 %
BYBIT:1000000MOGUSDT.P
Pivot & Source Cross StrategyPivot & ZoneCross Strategy V2
A powerful trading script combining Pivot Points, Retracement Zones, and Dynamic Stop-Loss Management. Suitable for beginners and advanced traders.
Introduction
This script enables traders to leverage Pivot Points and retracement zones for precise entry and exit points. Using price crossover detection and customizable stop-loss management, it offers a structured approach to trading various market conditions.
Features
Pivot Point Calculations: Select between Classic or Fibonacci methods for precise support and resistance levels.
Zone-Based Entry Signals: Identify price crossovers with retracement levels for optimal trade timing.
Customizable Stop-Loss Management: Automatically adjusts stop-loss levels to secure profits or limit losses.
Support for Market or Limit Orders: Choose instant market execution or specific limit entry points.
Flexible Inputs for Sources: Use Source First and Source Second to integrate external indicators like RSI and RSI MA, providing advanced customization options.
Visualization of Key Levels: Easily track retracement zones, Pivot Points, and stop-loss levels directly on the chart.
Configurable Conditions: Tailor entry/exit logic for your trading style.
How to Set Up
Choose Your Higher Timeframe (TIMEFRAME):
This determines the Pivot Points and retracement levels.
Example: Use “D” for daily pivots while trading on lower timeframes.
Select Entry Zone Patterns:
Define the pattern for detecting retracement levels:
xxx: Minor levels (steps of 10).
xx0: Intermediate levels (steps of 50).
x00: Major levels (steps of 100).
Set Entry Conditions for Long and Short Trades:
Activate or deactivate up/down conditions for xxx, xx0, or x00 patterns. Specify the count and range of crosses required for valid signals.
Configure Source Inputs (Source First and Source Second):
Assign external indicators such as RSI and RSI MA to refine entry conditions.
Tip: Adjust RSI settings in its separate indicator to suit your needs.
Select Your Order Type:
Choose between Market orders for instant execution or Limit orders for precision entries. Adjust offset zones for limit orders.
Set Up Stop-Loss Management:
Use dynamic stop-loss patterns with adjustable offsets:
HL: Stop-loss uses high/low levels of the zone.
Close: Stop-loss uses the closing price.
Customize Visualization Options:
Enable or disable xxx, xx0, x00, or 0 levels for cleaner charts. Adjust the display of retracement levels and stop-loss lines.
Apply and Monitor:
Attach the script to your chart, monitor entry/exit signals, and adjust parameters as needed.
How It Works
Calculates Pivot Points based on the chosen method ( Classic or Fibonacci ).
Detects price crossovers with retracement zones to identify potential entry points.
Dynamically adjusts stop-loss levels based on retracement zones and stop-loss patterns.
Supports both market and limit orders with customizable offsets for precise entries.
Allows integration of external sources like RSI for enhanced signal precision.
Important Notes
Use Source First and Source Second to input external indicators like RSI. You can configure RSI settings in its separate indicator to refine signals further.
Always test and optimize parameters before live trading.
Combine this script with your own analysis and proper risk management strategies.
This script is a tool to assist trading decisions but does not guarantee profits. Always trade responsibly.
PTS - Bollinger Bands with Trailing StopPTS - Bollinger Bands with Trailing Stop Strategy
Overview
The "PTS - Bollinger Bands with Trailing Stop" strategy is designed to capitalize on strong bullish market movements by combining the Bollinger Bands indicator with a dynamic trailing stop based on the Average True Range (ATR). This strategy aims to enter long positions during upward breakouts and protect profits through an adaptive exit mechanism.
Key Features
1. Bollinger Bands Indicator
Basis Moving Average Type: Choose from SMA, EMA, SMMA, WMA, or VWMA for the Bollinger Bands' basis line. Length: Adjustable period for calculating the moving average and standard deviation (default is 20). Standard Deviation Multiplier (StdDev): Determines the width of the bands (default is 2.0). Source: Select the price data used for calculations (default is the closing price).
2. Entry Conditions
The strategy enters a long position when the closing price crosses above the upper Bollinger Band , indicating strong upward momentum.
3. Exit Conditions
Trailing Stop Loss: Implemented using ATR to adjust dynamically with market volatility. ATR Length: Period for calculating ATR (default is 14). ATR Multiplier for Trailing Stop: Determines how closely the trailing stop follows the price (default is 2.0). Close Below Lower Bollinger Band: The strategy exits the long position if the closing price crosses below the lower Bollinger Band .
4. Risk Management
Commission and Slippage: Commission is set at 0.1%; slippage is set to 3. Position Sizing: Uses 100% of equity per trade (adjustable).
5. Date Range Filter
Specify the time period during which the strategy is active. Start Date: January 1, 2018. End Date: December 31, 2069.
Customizable Inputs
BB Length: Adjust the period for Bollinger Bands calculation. BB StdDev: Modify the standard deviation multiplier. Basis MA Type: Select the moving average type. Source: Choose the price data source. Offset: Shift the Bollinger Bands on the chart. ATR Length: Set the period for ATR calculation. ATR Multiplier for Trailing Stop: Adjust the trailing stop sensitivity.
Thought for 1m 7s
Description for the "PTS - Bollinger Bands with Trailing Stop" Strategy
PTS - Bollinger Bands with Trailing Stop Strategy
Overview
The "PTS - Bollinger Bands with Trailing Stop" strategy is designed to capitalize on strong bullish market movements by combining the Bollinger Bands indicator with a dynamic trailing stop based on the Average True Range (ATR). This strategy aims to enter long positions during upward breakouts and protect profits through an adaptive exit mechanism.
Key Features
1. Bollinger Bands Indicator
Basis Moving Average Type: Choose from SMA, EMA, SMMA, WMA, or VWMA for the Bollinger Bands' basis line. Length: Adjustable period for calculating the moving average and standard deviation (default is 20). Standard Deviation Multiplier (StdDev): Determines the width of the bands (default is 2.0). Source: Select the price data used for calculations (default is the closing price).
2. Entry Conditions
The strategy enters a long position when the closing price crosses above the upper Bollinger Band , indicating strong upward momentum.
3. Exit Conditions
Trailing Stop Loss: Implemented using ATR to adjust dynamically with market volatility. ATR Length: Period for calculating ATR (default is 14). ATR Multiplier for Trailing Stop: Determines how closely the trailing stop follows the price (default is 2.0). Close Below Lower Bollinger Band: The strategy exits the long position if the closing price crosses below the lower Bollinger Band .
4. Risk Management
Commission and Slippage: Commission is set at 0.1%; slippage is set to 3. Position Sizing: Uses 100% of equity per trade (adjustable).
5. Date Range Filter
Specify the time period during which the strategy is active. Start Date: January 1, 2018. End Date: December 31, 2069.
Customizable Inputs
BB Length: Adjust the period for Bollinger Bands calculation. BB StdDev: Modify the standard deviation multiplier. Basis MA Type: Select the moving average type. Source: Choose the price data source. Offset: Shift the Bollinger Bands on the chart. ATR Length: Set the period for ATR calculation. ATR Multiplier for Trailing Stop: Adjust the trailing stop sensitivity.
How the Strategy Works
1. Initialization
Calculates Bollinger Bands and ATR based on selected parameters.
2. Entry Logic
Opens a long position when the closing price exceeds the upper Bollinger Band.
3. Exit Logic
Uses a trailing stop loss based on ATR. Exits if the closing price drops below the lower Bollinger Band.
4. Date Filtering
Executes trades only within the specified date range.
Advantages
Adaptive Risk Management: Trailing stop adjusts to market volatility. Simplicity: Clear entry and exit signals. Customizable Parameters: Tailor the strategy to different assets or conditions.
Considerations
Aggressive Position Sizing: Using 100% equity per trade is high-risk. Market Conditions: Best in trending markets; may produce false signals in sideways markets. Backtesting: Always test on historical data before live trading.
Disclaimer
This strategy is intended for educational and informational purposes only. Trading involves significant risk, and past performance is not indicative of future results. Assess your financial situation and consult a financial advisor if necessary.
Usage Instructions
1. Apply the Strategy: Add it to your TradingView chart. 2. Configure Inputs: Adjust parameters to suit your style and asset. 3. Analyze Backtest Results: Use the Strategy Tester. 4. Optimize Parameters: Experiment with input values. 5. Risk Management: Evaluate position sizing and incorporate risk controls.
Final Notes
The "PTS - Bollinger Bands with Trailing Stop" strategy provides a framework to leverage momentum breakouts while managing risk through adaptive trailing stops. Customize and test thoroughly to align with your trading objectives.
MFI Strategy with Oversold Zone Exit and AveragingThis strategy is based on the Money Flow Index (MFI) and aims to enter a long position when the MFI exits an oversold zone, with specific rules for limit orders, stop-loss, and take-profit settings. Here's a detailed breakdown:
Key Components
1. **Money Flow Index (MFI)**: The strategy uses the MFI, a volume-weighted indicator, to gauge whether the market is in an oversold condition (default threshold of MFI < 20). Once the MFI rises above the oversold threshold, it signals a potential buying opportunity.
2. **Limit Order for Long Entry**: Instead of entering immediately after the oversold condition is cleared, the strategy places a limit order at a price slightly below the current price (by a user-defined percentage). This helps achieve a better entry price.
3. **Stop-Loss and Take-Profit**:
- **Stop-Loss**: A stop-loss is set to protect against significant losses, calculated as a percentage below the entry price.
- **Take-Profit**: A take-profit target is set as a percentage above the entry price to lock in gains.
4. **Order Cancellation**: If the limit order isn’t filled within a specific number of bars (default is 5 bars), it’s automatically canceled to avoid being filled at a potentially suboptimal price as market conditions change.
Strategy Workflow
1. **Identify Oversold Zone**: The strategy checks if the MFI falls below a defined oversold level (default is 20). Once this condition is met, the flag `inOversoldZone` is set to `true`.
2. **Wait for Exit from Oversold Zone**: When the MFI rises back above the oversold level, it’s considered a signal that the market is potentially recovering, and the strategy prepares to enter a position.
3. **Place Limit Order**: Upon exiting the oversold zone, the strategy places a limit order for a long position at a price below the current price, defined by the `Long Entry Percentage` parameter.
4. **Monitor Limit Order**: A counter (`barsSinceEntryOrder`) starts counting the bars since the limit order was placed. If the order isn’t filled within the specified number of bars, it’s canceled automatically.
5. **Set Stop-Loss and Take-Profit**: Once the order is filled, a stop-loss and take-profit are set based on user-defined percentages relative to the entry price.
6. **Exit Strategy**: The trade will close automatically when either the stop-loss or take-profit level is hit.
Advantages
- **Risk Management**: With configurable stop-loss and take-profit, the strategy ensures losses are limited while capturing profits at pre-defined levels.
- **Controlled Entry**: The use of a limit order below the current price helps secure a better entry point, enhancing risk-reward.
- **Oversold Exit Trigger**: Using the exit from an oversold zone as an entry condition can help catch reversals.
Disadvantages
- **Missed Entries**: If the limit order isn’t filled due to insufficient downward movement after the oversold signal, potential opportunities may be missed.
- **Dependency on MFI Sensitivity**: As the MFI is sensitive to both price and volume, its fluctuations might not always accurately represent oversold conditions.
Overall Purpose
The strategy is suited for traders who want to capture potential reversals after oversold conditions in the market, with a focus on precise entries, risk management, and an automated exit plan.
Gold Scalping Strategy with Precise EntriesThe Gold Scalping Strategy with Precise Entries is designed to take advantage of short-term price movements in the gold market (XAU/USD). This strategy uses a combination of technical indicators and chart patterns to identify precise buy and sell opportunities during times of consolidation and trend continuation.
Key Elements of the Strategy:
Exponential Moving Averages (EMAs):
50 EMA: Used as the shorter-term moving average to detect the recent price trend.
200 EMA: Used as the longer-term moving average to determine the overall market trend.
Trend Identification:
A bullish trend is identified when the 50 EMA is above the 200 EMA.
A bearish trend is identified when the 50 EMA is below the 200 EMA.
Average True Range (ATR):
ATR (14) is used to calculate the market's volatility and to set a dynamic stop loss based on recent price movements. Higher ATR values indicate higher volatility.
ATR helps define a suitable stop-loss distance from the entry point.
Relative Strength Index (RSI):
RSI (14) is used as a momentum oscillator to detect overbought or oversold conditions.
However, in this strategy, the RSI is primarily used as a consolidation filter to look for neutral zones (between 45 and 55), which may indicate a potential breakout or trend continuation after a consolidation phase.
Engulfing Patterns:
Bullish Engulfing: A bullish signal is generated when the current candle fully engulfs the previous bearish candle, indicating potential upward momentum.
Bearish Engulfing: A bearish signal is generated when the current candle fully engulfs the previous bullish candle, signaling potential downward momentum.
Precise Entry Conditions:
Long (Buy):
The 50 EMA is above the 200 EMA (bullish trend).
The RSI is between 45 and 55 (neutral/consolidation zone).
A bullish engulfing pattern occurs.
The price closes above the 50 EMA.
Short (Sell):
The 50 EMA is below the 200 EMA (bearish trend).
The RSI is between 45 and 55 (neutral/consolidation zone).
A bearish engulfing pattern occurs.
The price closes below the 50 EMA.
Take Profit and Stop Loss:
Take Profit: A fixed 20-pip target (where 1 pip = 0.10 movement in gold) is used for each trade.
Stop Loss: The stop-loss is dynamically set based on the ATR, ensuring that it adapts to current market volatility.
Visual Signals:
Buy and sell signals are visually plotted on the chart using green and red labels, indicating precise points of entry.
Advantages of This Strategy:
Trend Alignment: The strategy ensures that trades are taken in the direction of the overall trend, as indicated by the 50 and 200 EMAs.
Volatility Adaptation: The use of ATR allows the stop loss to adapt to the current market conditions, reducing the risk of premature exits in volatile markets.
Precise Entries: The combination of engulfing patterns and the neutral RSI zone provides a high-probability entry signal that captures momentum after consolidation.
Quick Scalping: With a fixed 20-pip profit target, the strategy is designed to capture small price movements quickly, which is ideal for scalping.
This strategy can be applied to lower timeframes (such as 1-minute, 5-minute, or 15-minute charts) for frequent trade opportunities in gold trading, making it suitable for day traders or scalpers. However, proper risk management should always be used due to the inherent volatility of gold.
Profit & Risk CalculatorThe "Profit & Risk Calculator" script in Pine Script (TradingView) is designed to help users calculate potential profit and risk when trading, and to provide alerts when specific price levels are reached (such as entry price, take profit, or stop loss). It includes several components as described below:
1. Input Fields:
The user can manually input various prices: entry price, stop loss price, and take profit price, with steps of 0.25.
There is also an option to input a custom value (e.g., for personal lot sizing) and a total investment amount.
2. Dynamic Lines:
The script draws dynamic horizontal lines for the input prices: entry line (white), stop loss line (red), and take profit line (green).
These lines are automatically updated based on the entered price levels.
3. Labels for the Lines:
Labels are added to the lines to visually indicate the entry, stop loss, and take profit levels on the chart.
4. Long and Short Position Calculations:
The script calculates potential profit and loss for both long (profit if the price goes up) and short (profit if the price goes down) positions.
It also calculates the distance between entry and take profit, and distance between entry and stop loss, along with the risk/reward ratio (RR).
5. Alerts:
The script generates alerts when one of the following conditions is met:
Entry Condition: The price touches or exceeds the entry price (high >= entryPrice).
Stop Loss Condition: The price touches or drops below the stop loss price (low <= stopLossPrice).
Take Profit Condition: The price touches or exceeds the take profit price (high >= takeProfitPrice).
6. Lot Calculations:
The script calculates both micro and mini lot sizes based on a preset table and the custom value.
The results are displayed in a table on the chart.
7. Profit/Risk Table:
The script shows two tables:
One table calculates the profit, loss, and risk/reward ratio based on the input entry price.
A second table shows the same calculations based on the current price.
8. Chart Display:
The script places tables and other visual data on the chart, such as preset values, profit and loss calculations, and the distance from take profit and stop loss to the entry price.
English Explanation of Each Part of the Script
1. Input Fields
The script starts with several input fields where the user can specify the entry price, stop loss price, take profit price, custom value, and investment amount. These values help define the parameters for risk/reward calculations.
2. Dynamic Horizontal Lines
Three horizontal lines are drawn on the chart, representing the entry price, stop loss price, and take profit price. These lines update dynamically based on user input.
3. Dynamic Line Updates
As the user adjusts their inputs, the position of the lines is updated in real-time to match the new price levels. This keeps the chart visually accurate.
4. Labels for Lines
Labels are placed on the chart next to each price line, allowing the user to clearly see which line represents which price level.
5. Long and Short Position Calculations
The script calculates the potential profit or loss for both long (prices go up) and short (prices go down) positions, providing users with an idea of their potential gains or losses.
6. **6. Risk/Reward Ratio Calculation
This calculates the Risk/Reward Ratio (RR) by dividing the distance between the take profit and entry price by the distance between the entry and stop loss price. This gives the trader an idea of how much risk they're taking relative to the potential reward.
7. Alert Conditions
The alert conditions are defined based on the price hitting the set levels:
Entry Condition: If the price goes up and touches the entry level, the alert is triggered.
Stop Loss Condition: If the price drops and hits the stop loss level, the alert is triggered.
Take Profit Condition: If the price rises and reaches the take profit level, the alert is triggered.
8. Alert Configuration
Each condition is linked to an alert that sends a message when the specific price level is touched. The alerts notify the user when the entry, stop loss, or take profit levels are hit.
9. Lot Calculations
The script includes a function that calculates micro and mini lot sizes based on a preset table and a custom value input by the user. This is useful for adjusting lot sizes to the desired amount and determining position sizes for trades.
10. Entry Price-Based Profit & Loss Table
A table is generated on the chart that displays detailed information about the profit, loss, and risk/reward ratio based on the entry price. It helps traders see the potential outcomes for different lot sizes.
11. Current Price-Based Profit & Loss Table
This second table provides similar information as the first but calculates profit, loss, and risk/reward based on the current price. This allows the trader to see how their position performs as the market price changes in real time.
Optimized Heikin Ashi Strategy with Buy/Sell OptionsStrategy Name:
Optimized Heikin Ashi Strategy with Buy/Sell Options
Description:
The Optimized Heikin Ashi Strategy is a trend-following strategy designed to capitalize on market trends by utilizing the smoothness of Heikin Ashi candles. This strategy provides flexible options for trading, allowing users to choose between Buy Only (long-only), Sell Only (short-only), or using both in alternating conditions based on the Heikin Ashi candle signals. The strategy works on any market, but it performs especially well in markets where trends are prevalent, such as cryptocurrency or Forex.
This script offers customizable parameters for the backtest period, Heikin Ashi timeframe, stop loss, and take profit levels, allowing traders to optimize the strategy for their preferred markets or assets.
Key Features:
Trade Type Options:
Buy Only: Enter a long position when a green Heikin Ashi candle appears and exit when a red candle appears.
Sell Only: Enter a short position when a red Heikin Ashi candle appears and exit when a green candle appears.
Stop Loss and Take Profit:
Customizable stop loss and take profit percentages allow for flexible risk management.
The default stop loss is set to 2%, and the default take profit is set to 4%, maintaining a favorable risk/reward ratio.
Heikin Ashi Timeframe:
Traders can select the desired timeframe for Heikin Ashi candle calculation (e.g., 4-hour Heikin Ashi candles for a 1-hour chart).
The strategy smooths out price action and reduces noise, providing clearer signals for entry and exit.
Inputs:
Backtest Start Date / End Date: Specify the period for testing the strategy’s performance.
Heikin Ashi Timeframe: Select the timeframe for Heikin Ashi candle generation. A higher timeframe helps smooth the trend, which is beneficial for trading lower timeframes.
Stop Loss (in %) and Take Profit (in %): Enable or disable stop loss and take profit, and adjust the levels based on market conditions.
Trade Type: Choose between Buy Only or Sell Only based on your market outlook and strategy preference.
Strategy Performance:
In testing with BTC/USD, this strategy performed well in a 4-hour Heikin Ashi timeframe applied on a 1-hour chart over a period from January 1, 2024, to September 12, 2024. The results were as follows:
Initial Capital: 1 USD
Order Size: 100% of equity
Net Profit: +30.74 USD (3,073.52% return)
Percent Profitable: 78.28% of trades were winners.
Profit Factor: 15.825, indicating that the strategy's profitable trades far outweighed its losses.
Max Drawdown: 4.21%, showing low risk exposure relative to the large profit potential.
This strategy is ideal for both beginner and advanced traders who are looking to follow trends and avoid market noise by using Heikin Ashi candles. It is also well-suited for traders who prefer automated risk management through the use of stop loss and take profit levels.
Recommended Use:
Best Markets: This strategy works well on trending markets like cryptocurrency, Forex, or indices.
Timeframes: Works best when applied to lower timeframes (e.g., 1-hour chart) with a higher Heikin Ashi timeframe (e.g., 4-hour candles) to smooth out price action.
Leverage: The strategy performs well with leverage, but users should consider using 2x to 3x leverage to avoid excessive risk and potential liquidation. The strategy's low drawdown allows for moderate leverage use while maintaining risk control.
Customization: Traders can adjust the stop loss and take profit percentages based on their risk appetite and market conditions. A default setting of a 2% stop loss and 4% take profit provides a balanced risk/reward ratio.
Notes:
Risk Management: Traders should enable stop loss and take profit settings to maintain effective risk management and prevent large drawdowns during volatile market conditions.
Optimization: This strategy can be further optimized by adjusting the Heikin Ashi timeframe and risk parameters based on specific market conditions and assets.
Backtesting: The built-in backtesting functionality allows traders to test the strategy across different market conditions and historical data to ensure robustness before applying it to live trading.
How to Apply:
Select your preferred market and chart.
Choose the appropriate Heikin Ashi timeframe based on the chart's timeframe. (e.g., use 4-hour Heikin Ashi candles for 1-hour chart trends).
Adjust stop loss and take profit based on your risk management preference.
Run backtesting to evaluate its performance before applying it in live trading.
This strategy can be further modified and optimized based on personal trading style and market conditions. It’s important to monitor performance regularly and adjust settings as needed to align with market behavior.